在遠端創(chuàng)建空倉庫
- 建立repo
[git@xt-50 anna]$ git init --bare
初始化空的 Git 版本庫于 /mirror/git/anna/
[git@xt-50 anna]$ ls
branches config description HEAD hooks info objects refs
使用命令"git init --bare"(bare漢語意思是:裸,裸的)辨嗽,把該倉庫導(dǎo)出為一種裸倉庫,之所以叫裸倉庫是因為這個倉庫只保存git歷史提交的版本信息郎笆,
而不允許用戶在上面進行各種git操作。使用它初始化的版本庫(暫且稱為bare repository)只會生成一類文件:用于記錄版本庫歷史記錄的.git目錄下面的
文件;而不會包含實際項目源文件的拷貝;所以該版本庫不能稱為工作目錄(working tree);如果你進入版本目錄,就會發(fā)現(xiàn)只有.git目錄下的文件,而沒有其它
文件;就是說,這個版本庫里面的文件都是.git目錄下面的文件,把原本在.git目錄里面的文件放在版本庫的根目錄下面;
換句話說,不使用--bare選項時,就會生成.git目錄以及其下的版本歷史記錄文件,這些版本歷史記錄文件就存放
在.git目錄下;而使用--bare選項時,不再生成.git目錄,而是只生成.git目錄下面的版本歷史記錄文件,這些版本歷
史記錄文件也不再存放在.git目錄下面,而是直接存放在版本庫的根目錄下面忘晤。
使用"git init"初始化的版本庫用戶也可以在該目錄下執(zhí)行所有g(shù)it方面的操作宛蚓。但別的用戶在將更新push上來的時候容易出現(xiàn)沖突。
- 添加通知功能
1.編輯config文件: [root@xt-50 xd-anna.git]# cat config
[core]
repositoryformatversion = 0
filemode = true
bare = true
[hooks]
mailinglist = "dev@xxxtech.com"
senderemail = "git@xxxtech.com"
2.編輯descritpion文件设塔,說明你這個repo是干什么的
3.進入hooks目錄凄吏,創(chuàng)建一個post-receive符號鏈接
lrwxrwxrwx. 1 git git 50 Dec 21 2015 post-receive -> /usr/share/doc/git-core/contrib/hooks/post-receive
這樣每一個對這個repo的改動操作大家都會得到郵件提醒。
在本地添加遠端并且推送代碼到遠端
git clone https://github.com/ceph/ceph.git //克隆源代碼
git remote add origin git@192.168.12.50:~/repositories/anna
git push --all //一次性把所有的分支都push上去
Counting objects: 667423, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (131837/131837), done.
Writing objects: 100% (667423/667423), 307.94 MiB | 11.22 MiB/s, done.
Total 667423 (delta 530200), reused 667409 (delta 530194)
To 192.168.12.50:~/repositories/ceph-12.2.11
* [new branch] Summit1.0 -> Summit1.0
* [new branch] master -> master
* [new branch] mh -> mh