Git 源树-can“;“将主机重置为此提交”;恢复推送提交?
我正在使用源代码树。Git 源树-can“;“将主机重置为此提交”;恢复推送提交?,git,version-control,atlassian-sourcetree,Git,Version Control,Atlassian Sourcetree,我正在使用源代码树。 我有两个远程分支,分别是dev和master。 我总是在开发分支中进行更改,并将更改合并到主分支。 但是我无意中使用了master分支而不是dev分支进行更改,然后将提交推送到远程。 我发现,如果单击最后一条合并消息,则会出现“将主机重置为此提交”选项。 我是否应该使用此功能擦除最后一次提交并返回原始点? 如果是,我应该使用什么重置类型,这样我就可以将我的更改保存在本地,然后将其保存起来以供dev branch应用 有没有源代码树的方法来解决这个问题 在这种情况下,您可以使
我有两个远程分支,分别是dev和master。
我总是在开发分支中进行更改,并将更改合并到主分支。
但是我无意中使用了master分支而不是dev分支进行更改,然后将提交推送到远程。
我发现,如果单击最后一条合并消息,则会出现“将主机重置为此提交”选项。
我是否应该使用此功能擦除最后一次提交并返回原始点?
如果是,我应该使用什么重置类型,这样我就可以将我的更改保存在本地,然后将其保存起来以供dev branch应用 有没有源代码树的方法来解决这个问题
在这种情况下,您可以使用
硬模式,这相当于git reset--hard
。本地主机将指向最后一次合并提交。然后运行git push origin-f master
在远程存储库中更新master
要将提交应用到develope
,可以先切换到develope
,然后使用git cherry pick$commit
。这里的提交是您在master
上错误创建的提交。虽然它现在不在master
上,但它仍然在本地存储库中,可以通过git命令进行操作,包括git cherry pick
,在这种情况下,您可以使用hard
模式,这相当于git reset--hard
。本地主机将指向最后一次合并提交。然后运行git push origin-f master
在远程存储库中更新master
要将提交应用到develope
,可以先切换到develope
,然后使用git cherry pick$commit
。这里的提交是您在master
上错误创建的提交。虽然它现在不在master
上,但它仍然在本地存储库中,可以通过git命令(包括git cherry pick
)进行操作