在Dulwich中,如何提交到分支而不是HEAD?

4 投票
1 回答
907 浏览
提问于 2025-04-16 22:41

看起来,repo.do_commit(message='test commit', committer='Name ') 只会提交到 refs/heads/master 这个分支。

有没有办法把当前的提交目标设置成其他的分支,而不是 refs/heads/master 呢?

或者说,提交到其他分支的唯一方法就是创建一个 Commit 对象(就像文档里的教程那样),然后把它的父级设置为那个分支的提交 ID 吗?

如果真是这样,那 repo.do_commit 除了提交到 refs/heads/master 还有什么用呢?

1 个回答

1

手动创建一个提交对象,然后设置标签,确实是最后一个版本中提交到非HEAD分支的唯一方法。

在主干(trunk)中的do_commit()函数支持一个“ref”参数,你可以用它来提交到其他分支。

http://www.samba.org/~jelmer/dulwich/apidocs/dulwich.repo.BaseRepo.html#do_commit

撰写回答