2017-02-06 42 views
0

我在我的私人服務器上有一箇中央git存儲庫(- 僅有的之一)。克隆和工作是完美的。 該服務器無法從網絡上訪問!網絡訪問不是我的回購選項。如何使用git和移動半裸回購?

當我離開辦公室後,我將我的源代碼複製到我的usb-stick並將內容再次複製到外部pc(因爲直接在usb-stick上工作會慢)。 的工作對電腦已經完成後,必須對代碼進行復制回粘,後來到中央主庫。

我想到的是在我的情況下最好的工作流程是什麼? 梅比的U盤應該是一個--bare庫嗎?外國電腦會承諾。但是,有沒有可能將棒子回購的變化合併到中央資料庫中,而不會有任何失誤?

我希望我能夠很好地解釋我的環境。

感謝的對你有所幫助!

回答

0

是的,使用您的USB驅動器作爲裸倉庫絕對是一個可行的解決方案,如果你問我,這是一個相當優雅的解決方案。然後您可以推送它並從中獲取,就像使用中央存儲庫一樣。 (最廣泛的意義上)存儲庫(「遙控器」),所以在你的辦公室電腦上,你可以簡單地將USB驅動器添加爲第二個遙控器。根據您的使用情況,您可能有時必須使用合併來重新獲得兩個不同的遠程同步,但這與正常合併沒有區別。至少,Git沒有什麼不同。

這裏是一個濃縮的例子:

# setup bare repo on USB drive, e.g. using 'git clone --bare' 
# on office PC 
(work work work) 
git remote add stick /path/to/repo/on/stick 
git push stick <branches> # can use --all 
# elsewhere 
git clone /path/to/repo/on/stick 
(work work work) 
git push stick <branches> 
# back in office 
git fetch stick 
(compare diffs or whatever you like) 
git merge stick/mybranch 
# etc. 

PS。當然你也可以使用rebase,如果你願意並且知道你的解決方法。