現在,我已經使用Dropbox在多個虛擬機(一個Windows,一個Mac,一個Linux)上同步一個Git存儲庫。我會在其中一臺機器上進行更改,Dropbox會負責將文件和repo的更改同步到其他機器上。如何在多臺機器上工作,在沒有Internet的情況下保持同步?
這工作非常無縫。我在OSX上編寫代碼,在Windows和Linux上測試代碼,也許在那裏做一些改變,然後從三者中的一個提交。
但是,它有三個主要缺點:
- 它需要互聯網連接。我經常不得不依靠我的手機進行互聯網連接,如果我在火車上,並且每個月只有幾百Mb的話,這是不可靠的。
- Dropbox同步所有包括目標文件,Visual Studio調試數據庫在內的一切事物,以及不需要同步的大量不必要的東西。
- 它總是通過Dropbox服務器,這對一些小項目或一些開源的東西很好,但我不想將我的工作文件推送到不受信任的服務器。
那麼,你如何管理這樣的環境?
編輯: 實際上,所有三個虛擬機都在同一檯筆記本電腦上,因此它們之間的網絡連接不成問題。另外,我經常在一個操作系統上編碼並在另一個操作系統上進行編譯 - 然後來回查找,直到找到所有錯誤。我不想用數百次增量提交來發送公司回購協議。
編輯2:
爲了給你一個我所期待的,這裏是我想出了一個部分解決方案的想法:在每一臺機器,我創造了我想工作的文件的git倉庫。通常,我將開始研究一臺機器上的錯誤/功能,然後完成我的工作。在下一臺機器上,我將調用git reset origin
來加載第一臺機器的更改,然後使用git commit --amend
繼續執行提交。這會來回幾次。一旦我完成了,我將最終實現這些更改(不再進行修改),並開始研究下一個功能/錯誤。
但是,這個工作流程感覺繁瑣和不雅。我所尋找的是能夠產生相同輸出的東西 - 一個是回購協議 - 但是在三臺機器之間流暢地創建。
使用真正的GIT回購?另外,除非你的機器在同一個地方,否則,如果沒有一些冗長的局域網電纜,這是不可能的! – Kyle
Bitbucket,GitHub,Google Code ...如果你需要一個私人的git回購,Bitbucket有免費的。爲什麼要使用Dropbox? – mingos
@mingos我無法使用互聯網回購協議來同步我的機器,因爲我並不總是有互聯網連接。 – bastibe