2010-09-10 106 views
2

我正在使用Git開展一個項目。現在,我正在研究分支中的一個功能,並且遇到了一些我需要從別人的分支中看到一些代碼來提醒自己他寫的函數是如何工作的(當我完成時,這兩個分支將會合並)。簡單的Git分支交換工作流程

我真的不想立即提交我的更改,並且檢查他的分支......然後切換回來。

什麼是解決此問題的更好方法?

回答

3

該工作的工具是git-stash。在帶有更改文件的Git目錄中運行git stash將會凍結您的更改,使工作目錄回到HEAD清除狀態)的狀態。這使您可以簽出不同的分支以及許多其他操作。當你完成並返回到這個分支時,運行git stash pop將存儲器中的更改彈出回工作目錄,讓你恢復原來的狀態,然後再將變化存儲起來。

$ git branch 
* develop-back 
    develop-other 
$ git stash 
$ git checkout develop-other 
$ ... 
$ git co develop-back 
$ git stash pop 

是的,這工作非常好,非常方便。但請記住,您不應該擔心在Git中進行更改。事實上,git-stash的確如此:在某處提交更改。在Git中提交意味着保存你的工作,在這種情況下,這正是你想要做的。您可以隨時重置混合:

$ git commit -am 'stashing away for a moment' 
$ git co develop-other 
$ ... 
$ git co develop-back 
$ git reset HEAD~ 

此工作流相當於積攢,你可以看到,它需要沒有更多的步驟。 git存儲只是這個過程的一個「包裝器」,具有更人性化的界面。

2

聽起來像要使用git stash

首先執行git stash。然後結帳另一個分支。一旦你完成了一看,回到你自己的分支,並使用git stash pop