如何解决将现有的、未提交的工作移动到 Git 中的新分支?
开发过程中遇到将现有的、未提交的工作移动到 Git 中的新分支的问题如何解决?下面主要结合日常开发的经验,给出你关于将现有的、未提交的工作移动到 Git 中的新分支的解决方法建议,希望对你解决将现有的、未提交的工作移动到 Git 中的新分支有所启发或帮助;问题描述
2020 年更新/Git 2.23
Git 2.23 添加了新的switch
子命令,以试图消除由于checkout
(切换分支、恢复文件、分离 head 等)的重载使用而产生的一些混乱。
从这个版本的 Git 开始,将 checkout 命令替换为:
git switch -c <new-branch>
行为是相同的并且保持不变。
2020 年更新/Git 2.23 之前
git checkout -b <new-branch>
这将使您当前的分支保持原样,创建并签出一个新分支并保留您的所有更改。然后,您可以暂存文件中的更改以提交:
git add <files>
并提交到您的新分支:
git commit -m "<BrIEf description of this commit>"
工作目录中的更改和索引中暂存的更改尚不属于任何分支。这会更改这些修改将结束的分支。
您不会重置原始分支,它会保持原样。最后一次提交<old-branch>
仍然是相同的。因此你checkout -b
然后提交。
解决方法
我开始了一些新功能的工作,在编写了一些代码之后,我决定这个功能应该在它自己的分支上。
如何将现有未提交的更改移动到新分支并重置我当前的?
我想重置我当前的分支,同时保留新功能的现有工作。