3

如何在索引中添加一些内容,如

git add .

然后

git commit -m "message"

然后

git push origin master

使用德威?

到目前为止,我已经找到了这个http://www.samba.org/~jelmer/dulwich/apidocs/dulwich.index.Index.html但它并没有说太多,不是吗?

谢谢

4

2 回答 2

5

这不是一个经过测试的答案,但它更接近推动部分:

# set wants to master
def wantmaster(haves, wants):
  global repo
  return { "refs/heads/master": repo.refs["HEAD"] }

client, src = dulwich.client.get_transport_and_path(origin_uri) 

client.send_pack(src, wantmaster, repo.object_store.generate_pack_contents)

我的代码中有一个变体。

于 2011-09-28T13:10:01.057 回答
3

在这种情况下,您不需要索引,而是需要 repo(索引是其中的一部分)。http://www.samba.org/~jelmer/dulwich/apidocs/dulwich.repo.Repo.html

像这样的东西应该工作:

>>> from dulwich.repo import Repo
>>> x = Repo('.')
>>> x.stage(['a'])
>>> x.do_commit(message="foo")
'151915d47467696d2f9d18de6f61be7168682aeb'
于 2011-09-28T09:48:56.690 回答