如何搁置(另一个git分支)一组更改



我在visual studio-code和使用git工作。在我开发的系统中,我是一个独立的程序员。我把所有的工作都放在一个git分支中,使用git只是为了保证代码的安全(实际上,使用git是管理层的要求)。

我开始了一些编程任务,修改了几个文件,然后得到了一个更紧急的任务,然后是另一个任务,等等。现在几乎很清楚,我很可能不会再回到开始和未完成的任务。

所以有几个文件卡住了,在我的编辑器中没有提交。我想,也许我可以将这些更改提交到另一个(新的)git分支,并从我的工作分支中删除它们?正确的做法是什么?

这里有几个选项。也许最简单的方法是将你的工作进行git stash化。这将告诉Git在底层生成2个(或者3个)提交,这将跟踪你的工作目录和阶段,同时将分支带回到HEAD提交的原始状态。

另一个选项是创建git add你已经更改的文件,然后创建一个新的分支:

# from current branch
git add <all files>
git branch temp_branch

从这里开始,你可以换到其他分支继续工作。

在你的情况下,你应该使用git stash命令来保存你当前工作目录下的不整洁的工作。

看看下面的线程:git stash的预期用例是什么?

你会的

  • 隐藏不需要的更改git stash
  • 切换到新的分支git checkout -b "branch_name"
  • Unstashgit stash pop
  • 添加,commitgit commit -am "what I should have done in the first place"
  • 切换回git checkout main

我还记得这段经历,因为它给了我第一手的教训,告诉我为什么应该更多地使用分支。

最新更新