2016-04-07 19 views
1

由於回答這個question顯示您可以查看藏匿與變化:預覽更改藏匿將對當前HEAD而不應用

git stash show -p [email protected]{N} 

然而,藏匿比較原來的母公司,並執行不會指出在應用藏匿物後你會留下什麼(例如,藏匿物可能已經被合併或可能有衝突)。

是否有預覽這些更改而不應用存儲和執行差異的簡單方法(因爲這會使當前工作狀態變得很髒)?

回答

0

一個快速的方式來預覽應用藏匿的結果將是創建一個話題分支:

git checkout -b teststash 

應用藏匿後,這將是微不足道的不是「接受」或「拒絕」了更改。

爲「拒絕」的變化,只需刪除更改並返回到以前的分支:

git checkout . # or re-stash if you still want that patch 
git checkout - # switch back to previous branch 

「接受」的變化只是做一個承諾,切換回以前的分支和合並在你的臨時分支。這將是一個快速向前合併,這樣你的歷史將不會表明您已經在全部預覽分支(你可能不會後來在乎):

git add path/to/file.txt 
git commit -m "re-apply fix foo" 
git checkout - 
git merge - 

或者,如果你想「接受「的變化,但不希望在這一點上承諾,只需切換回原來的分支,繼續工作:

git checkout - 

所以,總之,是不是一個建立在」預覽我申請之後「Git命令,但Git的輕量級分支使得這個操作非常簡單。

+0

謝謝,它的遺憾是沒有一個單一的命令。我可能會探索在腳本中包裝它。 –

相關問題