2012-07-11 62 views
0

我整天在多個系統上工作。我一直在試圖找出在兩個系統之間共享當前工作目錄的策略。如何在兩個系統上使用同一個github repo?

的代碼是在Github上託管的私人回購協議。我想在Dropbox的使用裸回購這樣的:

Github 
     | 
    Dropbox(bare repo) 
    / \ 
    Desktop Laptop 

我試圖避免噸假簽在我的回購只是使代碼在兩個系統之間共享。我測試了這一點,它似乎工作分享代碼,但我認爲所有的簽到仍然會堆積在git日誌中,當我不得不從dropbox推到github時。

所以我的問題:

  1. 會不會有來自Dropbox的裸回購協議Github上推前編輯提交(IM想這樣擠壓了一堆提交到一個)的方法嗎?
  2. 我應該只是把工作目錄複製到Dropbox的(克隆從GitHub),然後使用代碼從那裏?
+0

的可能的複製[從今天早些時候程序員這個問題。(http://programmers.stackexchange.com/questions/156309/working-with-git-on-multiple-machines)你可能會檢查出有答案。 – Christopher 2012-07-11 02:24:22

回答

1

跳過Dropbox的全部。相反,使用主題分支進行工作,然後rebase或以其他方式改善您的歷史記錄,當您準備合併到master時。

工作流會是這個樣子:

  1. 獲取的衝動,編寫一個功能。使它成爲一個話題分支:git checkout -B <topic> master
  2. 代碼外出<topic>。無論你喜歡什麼狀態,都可以隨時隨地提交。
  3. 在一天/會話結束,推到github上:git push origin <topic>
  4. 當跳躍到其他機器上,結帳<topic>和跟蹤:git checkout --track origin/<topic>git pull origin <topic>如果你已經擁有它簽出。
  5. 重複步驟2-3,直到該主題完成。

當你準備用masterproduction合併,用git rebase -i<topic>邏輯,可調試,維護歷史。

+0

完成後是否刪除這些主題分支? – 2012-07-11 03:09:05

+0

是的,但我並沒有嚴格遵守它。我通常會花費3-4個週期,然後在'git branch -a'的輸出中產生足夠的煩惱,然後再對其進行清理。這是個人品味的問題。有幾十個分支躺在周圍沒有性能的後果。 – Christopher 2012-07-11 03:17:26

相關問題