我通过删除某些文件修改了我的源目录并完成了commit
. 我push origin master
对远程主机 github 做了一个。
现在我知道我需要这些文件才能正常运行。现在我需要一种方法来返回我的上一个commit
,然后返回push
到我的远程主机。
有可能这样做吗?我对 git 很陌生,我很困惑。
提前致谢。
由于您已经推送,我建议您反对 Nikhil 的解决方案,并建议您像这样对最新提交执行“git revert” git revert HEAD
,然后推送。该revert
命令将创建一个新的提交,以撤消指定提交的效果并将其添加到您的存储库中。
git revert
创建一个撤消一个或多个先前提交的新提交。这通常是撤消已推送的提交的最佳方式。
例如,此命令将恢复从提交abc1234
到并包括最新提交 ( HEAD
) 的所有内容:
git revert abc1234..HEAD
您也可以使用git reset
,但是此命令会更改历史记录,并且会给使用存储库的其他任何人带来问题。一般来说,如果您想丢弃尚未推送的更改(并且您确定将来不想再返回),您应该只使用此命令。
试穿这些,
git reset --hard SHAsumOfYourCommit
git reset --hard HEAD [your current head point]
git reset --hard HEAD^ [your previous head point]
假设我们有一个带有分支 master 的远程 myrepo,当前指向提交 dd61ab32,您可以使用该命令删除最后一次提交。
git push myrepo +dd61ab32^:master
怎么了朋友,看,我很努力,我什至发现了一种方法,它对我有用:)
git reset --hard commitId //delete your local commits
git push -f origin yourOrigin //delete your github remotes commits
我希望能帮助你。