简单的Git分支交换工作流程

时间:2010-09-10 16:49:43

标签: git

我正在使用Git开发一个项目。现在,我正在研究分支中的一个功能,并遇到了一些我需要从别人的分支中看到一些代码的东西,以提醒自己他编写的函数是如何工作的(这两个分支将在我完成时合并)。

我真的不想立刻提交我的更改并且git checkout他的分支......然后切换回来。

处理这个问题的更好方法是什么?

2 个答案:

答案 0 :(得分:3)

工作的工具是git-stash。在包含已更改文件的Git目录中运行git stash将隐藏您的更改,使工作目录恢复到HEAD状态( clean 状态)。这允许您签出不同的分支,以及许多其他操作。当你完成并重新进入这个分支时,运行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 stash只是这个过程的“包装器”,有一个更人性化的界面。

答案 1 :(得分:2)

听起来您想使用git stash

首先执行git stash。然后结帐另一个分支。看完之后,回到自己的分支,然后使用git stash pop

相关问题