2015-08-14 134 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