我有一個項目託管在GitHub上,我想在本地工作。我有多臺需要訪問它的計算機,我想在它們之間共享代碼。但是,我不希望所有這些提交都在GitHub上,所以一個簡單的「克隆然後只是推/拉」方法並不適合。Git與「兩級遠程」
從本質上講,我想這一點:
[GitHub] --> [A Local Network Share] --> [PC1]
--> [PC2]
所以PC1和PC2應該能夠推/拉至本地網絡共享,因此彼此之間共享代碼,每過一段時間我想將這些更改推送到我的GitHub存儲庫。
我在這裏有點失落 - 我是否創建了一個分支?或者我從GitHub克隆到我的共享,然後從我的共享克隆到PC1和PC2,這將導致他們只有1個遠程(共享)和共享只有1個遠程(GitHub)?
編輯:這不是爲了安全 - 我不介意所有的立即提交到GitHub,我也不想阻止PC2訪問GitHub。更多的是,我不想設置整個SSL的東西,因爲我是非常經常提交的人(有時每隔幾分鐘 - 我使用git commit作爲擴展的撤銷函數),並且我希望GitHub上的代碼總是可編譯。 。
編輯2:解決方案在這裏並沒有對我的工作還沒有:(所以我在我的服務器上做
git clone --bare [email protected]:foo/bar
這將創建一個副本在我的電腦,我的git克隆這個倉庫 - 這一點。一步工作正常,我的電腦有一個.git存儲庫,我的服務器設置爲遠程。
但是,在服務器上,沒有任何設置正確 - 沒有遙控器添加,我不能從那裏推。使用git add很容易添加一個遠程,但是我怎麼推?git status說它需要一個工作目錄(這是我們沒有的),g它推動說「一切都是最新的」,即使它不是(我在PC1上進行了更改,並將git推送到服務器)
在服務器上創建存儲庫而沒有--bare意味着它有它自己的工作dir,所以當我從個人電腦中推送時,服務器不會選擇那個(我猜我不知道需要從個人電腦中獲得git pull,但我想避免這種情況)。
我錯過了一步嗎?
@Michael:謝謝你的編輯和額外的一步。 – VonC 2010-01-07 06:34:42