#!/usr/bin/env python
-# Copyright (c) 2007 Rocco Rutte <pdmef@gmx.net>
+# Copyright (c) 2007, 2008 Rocco Rutte <pdmef@gmx.net> and others.
# License: MIT <http://www.opensource.org/licenses/mit-license.php>
from mercurial import repo,hg,cmdutil,util,ui,revlog,node
# default git branch name
cfg_master='master'
+# default origin name
+origin_name=''
# silly regex to see if user field has email address
user_re=re.compile('([^<]+) (<[^>]+>)$')
# silly regex to clean out user names
user_clean_re=re.compile('^["]([^"]+)["]$')
+def set_default_branch(name):
+ global cfg_master
+ cfg_master = name
+
+def set_origin_name(name):
+ global origin_name
+ origin_name = name
+
def setup_repo(url):
- myui=ui.ui(interactive=False)
+ try:
+ myui=ui.ui(interactive=False)
+ except TypeError:
+ myui=ui.ui()
+ myui.setconfig('ui', 'interactive', 'off')
return myui,hg.repository(myui,url)
def fixup_user(user,authors):
+ user=user.strip("\"")
if authors!=None:
# if we have an authors table, try to get mapping
# by defaulting to the current value of 'user'
# other CVS imports may need it, too
if name=='HEAD' or name=='default' or name=='':
name=cfg_master
- return name.replace(' ', '_')
+ if origin_name:
+ return origin_name + '/' + name
+ return name
def get_changeset(ui,repo,revision,authors={}):
node=repo.lookup(revision)
def get_git_sha1(name,type='heads'):
try:
# use git-rev-parse to support packed refs
- cmd="GIT_DIR='%s' git-rev-parse --verify refs/%s/%s 2>/dev/null" % (os.getenv('GIT_DIR','/dev/null'),type,name)
+ cmd="GIT_DIR='%s' git rev-parse --verify refs/%s/%s 2>/dev/null" % (os.getenv('GIT_DIR','/dev/null'),type,name)
p=os.popen(cmd)
l=p.readline()
p.close()