我第一次提交主项目时遇到了很大的困难。主要是因为我对下载的代码进行了所有更改,而不是从主代码克隆。所以最终对我有用的是从主控远程分支创建一个本地分支,然后复制粘贴更改的代码。
但是一旦我尝试比较两者,这导致了相当混乱的观点。因为它显示了删除和添加的所有内容。
所以我的问题是:一旦我将我的分支与Github的主人合并,并且由于某种原因它不能很好地工作,有没有办法在合并之前回到掌握(没有大的困难)
感谢所有答案。得知它感谢建议和第一批上线:)
答案 0 :(得分:3)
鉴于合并提交已经存在于master
中,这里最安全的选择是恢复合并提交:
git checkout master
git revert -m 1 <commit hash of merge commit>
要在master
中找到合并提交的提交哈希,只需从bash中键入git log
并找到提交。
这种方法在master
之上进行了一次新的提交,它在功能上撤消了合并提交。您可以像往常一样推送master
分支。如果通过拉取请求master
,则此方法也不应该挂起。
注意:上面-m 1
中使用的git revert
选项告诉Git使用第一个父级,即master
作为跟踪的跟踪。我们也可以使用-m 2
,它将跟随作为合并源的特征分支。
答案 1 :(得分:0)
要在提交更改后返回,您可以使用以下命令:
$git revert <commit hash code>
您可以使用以下命令查看提交哈希码:
$git log --oneline
这将显示提交哈希码和提交消息。
通过使用revert命令,只能恢复最新的提交。
在git bash中使用revert命令后,如果存在冲突,则可以使用以下命令中止恢复(如果您不想在看到冲突后恢复):
$git revert --abort
如果要继续解决冲突,请使用命令:
$git revert --continue
此过程将还原最新的提交。