用Git将未缓存的修改切换到一个新的分支上的方法(附代码)

122 阅读2分钟

我总是在错误的分支上。我要么在mastermain 上工作,而这些工作应该在fixfeature 分支上。或者我在我工作的最后一个分支上,而我应该剪一个新的分支。哦,好吧。这并不是什么大问题。基本上是指把未缓存的修改切换到一个新的分支。这就是我通常所做的。

  • 把所有已修改但未暂存的文件藏起来
  • 移回主分支
  • 拉回主干,确保它是最新的。
  • 从主干分支上剪下一个新的分支
  • 移动到新的分支
  • 解除那些修改过的文件的封存

想了解更多关于Git的其他技巧吗?我们的"高级 Git "系列就有很多。

用 Git CLI 将未缓存的改动切换到新的分支,看起来像这样

下面是我在Git中如何将未缓存的改动切换到新的分支。

git status
git stash --include-untracked
git checkout master
git pull
git branch content/sharis
git checkout content/sharis
git stash pop

是的,我直接提交jpgs到git。

在Git Tower中把未缓存的改动切换到一个新的分支,看起来像这样

我想,理论上你也可以在Git Tower中逐一完成这些步骤,将未缓存的变更切换到新的分支,但捷径是你可以建立分支,然后双击它。

对不起,我只是在做Git Tower,但还有很多其他的Git GUI可能也有巧妙的方法来做这个。

但是有一种新的花哨的方式!那就是将未缓存的修改切换到分支上。

这种将未缓存的修改切换到新分支的方式对我来说是新的,而当Wes在推特上发布这个消息时,他也是新的。

TIL关于`git switch`,它允许你将你的未缓存的变化转移到一个新的分支。

似乎相当新。我习惯于`git stash`,新分支,然后`git stash apply`pic.twitter.com/6Rd0fCJOcV

酷。这就是。

git switch -c new-branch