1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
#!/usr/bin/env python
import bzrlib
from bzrlib.plugin import load_plugins
load_plugins()
from bzrlib.plugins.git.server import BzrBackend
from dulwich.server import ReceivePackHandler
import sys, os
if len(sys.argv) != 2 or not os.path.isdir(sys.argv[1]):
print "usage: git-receive-pack <git-dir>"
sys.exit(1)
backend = BzrBackend(bzrlib.transport.get_transport(sys.argv[1]))
def write_fn(data):
sys.stdout.write(data)
sys.stdout.flush()
server = ReceivePackHandler(backend, sys.stdin.read, write_fn)
server.handle()
|