如何在 Git 上将未提交的更改从一个分支移动到另一个分支
How to move changes as uncommitted from one branch to another on Git
我想将一个分支中相对于 master 的所有更改移动到另一个分支。
我不希望它们像更改一样作为提交,以便我可以修改它们并删除一些更改并作为一个提交。我不想保留旧的提交历史记录。
我尝试了 git format-patch master --stdout > mypatch.path
git 应用
但这适用于我之后无法修改的提交。
如果我正确理解您想做什么,一种方法是从您的第一个分支开始:
git checkout branch1
从那里创建一个新分支:
git checkout -b branch2
重置回 master,这将删除在 branch1
上所做的任何提交,但将更改保留为未暂存:
git reset master
然后您可以进一步修改文件并将它们作为一次提交提交。
我会这样做以将更改从 branch1 移动到 branch2:
git checkout branch2
git merge --squash branch1
尚未在分支之间创建提交或"copied"。如果需要,可以在提交之前修改更改。
我想将一个分支中相对于 master 的所有更改移动到另一个分支。
我不希望它们像更改一样作为提交,以便我可以修改它们并删除一些更改并作为一个提交。我不想保留旧的提交历史记录。
我尝试了 git format-patch master --stdout > mypatch.path git 应用
但这适用于我之后无法修改的提交。
如果我正确理解您想做什么,一种方法是从您的第一个分支开始:
git checkout branch1
从那里创建一个新分支:
git checkout -b branch2
重置回 master,这将删除在 branch1
上所做的任何提交,但将更改保留为未暂存:
git reset master
然后您可以进一步修改文件并将它们作为一次提交提交。
我会这样做以将更改从 branch1 移动到 branch2:
git checkout branch2
git merge --squash branch1
尚未在分支之间创建提交或"copied"。如果需要,可以在提交之前修改更改。