2013-02-14 28 views
1

我想在我的服務器上創建一個git repo以在推送後更新我的網站。所有教程(如此:http://developertheory.com/how-to-auto-deploy-apps-after-git-push/)的第一步驟中,我發現,這是命令:是--bare選項是否等於Git中的core.bare配置?

git init --bare 

在接下來的步驟我應該輸入以下命令:

git config core.worktree /path/to/git/deploy 
git config core.bare false 
git config receive.denycurrentbranch ignore 

第二命令(git config core.bare false )將回購設置爲非裸露。爲什麼我們首先將庫存初始化,然後將其設置爲非裸露?

+0

你能準確地描述你正在嘗試做什麼? 「推送後更新我的網站」是什麼意思? – sinelaw 2013-02-14 14:36:52

+0

我的意思是我想在我的本地系統中輸入'git push'後自動結賬。請參閱我剛剛添加的帖子 – user16948 2013-02-14 14:42:03

回答

1

我懷疑這個教程使用git init --bare「乾淨」的方式來創建一個空的回購協議,不能與實際文件的混合:

這種回購包含直接.git平常內容,即使是再後配置爲非裸露。
您需要一個非裸回購爲git checkout(在掛鉤)工作,因爲您只能檢出一個非裸露的回購(根據定義,沒有工作樹裸露的分支)。

我不會建議部署該方法雖然,我更喜歡:

  • 保管,爲了回購裸推到它
  • 建立回購,非裸
  • 在第一個(裸露)回購庫中添加一個後接收掛鉤,以便第二個回收站從第一個回收站獲取。

見例如:

相關問題