我想基本上恢复主分支中的更改。 我可以通过执行以下操作找到我的提交历史记录:
import git
repo = git.Repo('repos/my-repo')
commits = repo.iter_commits('master',max_count=10)
但我不确定如何将头指向,比如说,消息包含“重置给我”的提交。我知道 repo.git.reset('--hard')
,但我不知道如何正确使用它。谢谢
最佳答案
如果您知道提交编号,例如“最新提交 = 1”、“第二个提交 = 2”等,那么您可以使用 ~ 运算符和 HEAD 来指向该提交。 HEAD~1 = 最新提交,HEAD~2 = 第二个最新提交。
因此要删除最新的提交,您可以使用:
import git
repo = git.Repo('repos/my-repo')
repo.head.reset('--hard HEAD~1', index=True, working_tree=True)
引用this问题以了解有关如何识别提交的更多信息。
关于python - 如何使用 GitPython 将 master 分支的头重置为之前的提交,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56081371/