我有三个分支Master,Branch1和Branch2, 我目前正在研究Branch2。我做了一些本地更改但我想将这些更改提交到新分支(Branch3)。
在做了一些研究后,我发现我应该使用“git checkout -b [name_of_your_new_branch]”
创建一个新命令我很害怕,如果我结帐新分支,我所有的本地更改都将消失。
在处理branch2时,有人可以帮助确认提交和推送到新分支的最安全方法。
答案 0 :(得分:1)
如果您签出新分支,则不会丢失更改。你应该:
创建一个新分支
git checkout -b Branch3
暂存您的更改
git add .
将您的更改提交到该分支
git commit -m "Adding current changes to my newly created branch"
推动你的分支
git push --set-upstream origin Branch3
答案 1 :(得分:1)
除非您提出要求,否则Git不会覆盖或破坏您的更改。请注意具有标记--force
或-f
的命令。如果您在进行未提交的更改时签出另一个分支,Git将会"浮动"这些变化结束了。如果无法干净地应用更改,Git将拒绝检查其他分支。
只需创建并检查新分支,就像您提到并照常提交更改一样。
git checkout -b Branch3
git add <path>
git commit
作为一般建议,尽量保持您关心的事情。恢复已经成为提交一部分的更改是相当简单的,但是很难恢复从未参与过提交或添加到索引中的文件。