将更改的文件移动到另一个分支办理登机手续

这经常发生在我身上:我写了一些代码,去检查我的更改,然后意识到我没有在适当的分支来检查这些更改。 但是,我不能切换到另一个分支没有我的变化恢复。 有没有办法将更改移动到另一个分支进行检查?

git stash是你的朋友。

如果你还没有提交,只需运行git stash 。 这将节省您的所有更改。

切换到您想要更改的分支并运行git stash pop

git存储有很多用途。 这当然是更有用的原因之一。

一个例子:

 # work on some code git stash git checkout correct-branch git stash pop 

如果你还没有提交你的修改 ,只要使用git checkout移动到新的分支,然后正常提交它们 – 直到提交它们,对文件的修改才会被绑定到特定的分支上。

如果您已经提交了更改:

  1. inputgit log并记住你想移动的提交的SHA。
  2. 查看你想要提交的分支。
  3. 键入git cherry-pick SHA代替上面的SHA。
  4. 切换回您的原始分支。
  5. 使用git reset HEAD~1在错误分支提交之前重置。

cherry-pick采取给定的提交,并将其应用到当前签出的头,从而允许您将提交复制到一个新的分支。

如果您想将更改移动到新的分支 ,则只能使用两个命令完成:

 git stash git stash branch new-branch 

根据git存储文件 :

分行<branchname> [<stash>]

从最初创build<stash>的提交开始创build并签<branchname><branchname>的新分支,将logging的更改应用于新的工作树和索引。