回答

收藏

将现有的、未提交的工作移动到 Git 中的新分支

技术问答 技术问答 261 人阅读 | 0 人回复 | 2023-09-11

我开始了一些新功能,在编写了一些代码后,我决定这个功能应该在它自己的分支上。+ G7 y' ~* s$ T0 j/ d
如何将现有未提交的变更移动到新分支并重置我当前的变更?, I( P( C5 a: M) g
我想重置我目前的分支机构,保留新功能的现有工作。
- \; D! [3 _4 x! Q                                                                3 E" V" T, h* W4 G) @: W; g
    解决方案:                                                               
; q. ~$ ~' w2 k                                                                2020 年更新/Git 2.23Git 2.23 添加了新的switch试图消除子命令的原因checkout(切换分支,恢复文件,分离 HEAD 等)重载使用造成的一些混乱。0 q4 I7 X' h% T
从这个版本Git 开始, checkout 命令替换为:
: P7 b: B0 K, Kgit switch -c 行为是一样的,保持不变。
  o3 }/ y/ \3 a2020 年更新/Git 2.23 之前使用以下内容:, ?0 o/ P6 q( H6 A) n2 u! ~
git checkout -b 这将保持您当前的分支,创建并签署一个新的分支,并保留您所有的变更。然后,您可以暂存文件中的更改以提交:
7 g5 j5 n7 m- U# m+ lgit add 并向您提交新分支:8 g2 a5 Y9 o& V" c
git commit -m "# v7 I# O( P) |
"工作目录和索引中暂存的变更不属于任何分支。这将改变这些修改将结束的分支。: h- t$ T% n. _# z& e
您不会重置原分支,它将保持原样。最后一次提交仍然是相同的。因此你checkout -b然后提交。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则