我开始了一些新功能的工作,在编写了一些代码之后,我决定这个功能应该在它自己的分支上。
如何将现有未提交的更改移动到新分支并重置我当前的?
我想重置我当前的分支,同时保留新功能的现有工作。
Git 2.23 添加了新的switch子命令,以试图消除由于checkout(切换分支、恢复文件、分离 HEAD 等)的重载使用而产生的一些混乱。
switch
checkout
从这个版本的 Git 开始,将 checkout 命令替换为:
git switch -c <new-branch>
行为是相同的并且保持不变。
使用以下内容:
git checkout -b <new-branch>
这将使您当前的分支保持原样,创建并签出一个新分支并保留您的所有更改。然后,您可以暂存文件中的更改以提交:
git add <files>
并提交到您的新分支:
git commit -m "<Brief description of this commit>"
工作目录中的更改和索引中暂存的更改尚不属于任何分支。这会更改这些修改将结束的分支。
您不会重置原始分支,它会保持原样。最后一次提交<old-branch>仍然是相同的。因此你checkout -b然后提交。
<old-branch>
checkout -b