如何使用GitPython将主分支的头重置为上一个提交

2024-03-28 09:59:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我想从本质上恢复主分支中的更改。 我可以通过以下方式找到我的犯罪记录:

import git
repo = git.Repo('repos/my-repo')
commits = repo.iter_commits('master',max_count=10)

但是我不确定如何将头部指向,比如说,一个包含“reset to me”消息的提交。我知道repo.git.reset('--hard'),但我不知道如何正确使用它。谢谢


Tags: importgitmastermy分支方式记录repo
1条回答
网友
1楼 · 发布于 2024-03-28 09:59:11

如果您知道提交编号,如Latest commit=1、Second=2等,那么您可以使用~operator和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问题以了解有关如何标识提交的更多信息。你知道吗

相关问题 更多 >