~mwhudson/bzr-git/better-progress-for-incremental-imports

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()