2015-08-14 132 views
0

所以我對本地分支A進行了更改。我在切換到分支B之前忘記存儲這些更改,現在分支B具有分支A的所有更改。在Git中切換分支時撤消文件的修改

這些是不少變化,我真的不願意通過它們手動取笑。

我怎麼能簡單的取消命令:

git的結帳branch_b

這是我的最後一個命令我用git做是否有助於使問題更容易解決

感謝

回答

0

除非您實際承諾提供所有這些文件,否則B部門不會「進行所有這些更改」。到目前爲止發生的所有事情是,您已將轉換爲到分支B,並且這些更改在您的工作目錄中仍然存在。您有幾個選項:

  • 您可以切換回分支A並提交更改。

    git checkout branch_a 
    git commit -m "some stuff that should be on branch_a" 
    

    再切換回分支B.

  • 您可以可以切換到分支A和「藏匿」的變化:

    git checkout branch_a 
    git stash 
    

    後來,如果你想繼續工作在這些變化上:

    git checkout branch_a 
    git stash pop 
    
  • 您可以創建一個基於分支A的新分支作爲一個臨時的地方進行保存了這些變化:

    git checkout -b work_on_branch_a branch_a 
    git add -u 
    git commit -m "work in progress for branch a" 
    

    後來,你可以合併這些更改回分支,或者只是他們忘了,如果你決定他們不再是必要的。

+0

非常感謝您的回答,爲我解決了一些問題 – appthat