我在
Your branch is ahead of 'origin/master' by 2 commits.
(use "git push" to publish your local commits)
在我的本地主分支中进行并进行一些更改之后的状态。
如何将本地更改添加到新分支中?
我想要的结果是:local / master与origin / master同步,我有一个本地分支,其中有两个提交。
答案 0 :(得分:8)
第一
git checkout -b newBranchName
这将创建一个新分支,与您正在处理的当前主分支相同。
之后,
git checkout master
这将选择master作为您当前的分支。
最后
git reset --hard origin/master
这将从master删除这两个提交,但它们仍然可以在newBranchName
编辑:作为@ShmulikKlein提及,请注意--hard
..您可以随时使用--soft
,然后放弃更改
答案 1 :(得分:1)
@Matias是对的,但首先,你应该非常小心使用git reset --hard
以及最后两次提交,它还会消灭你完全工作的目录和暂存区域(又名,unstated和uncommited变化)。
其次,我认为当你在git reset --hard HEAD~2
分支时,最后一步应该是master
,因为你只想恢复最后2次提交,因为你不知道如何{自您发布问题后{1}}已更改...(除非您使用origin/master
检查...)