Make hg-fast-export work on Windows
authorDaniel Harding <dharding@gmail.com>
Wed, 21 Mar 2012 23:16:11 +0000 (21 23:16 +0000)
committerDaniel Harding <dharding@gmail.com>
Mon, 28 May 2012 17:57:30 +0000 (28 18:57 +0100)
* use sys.stdout.write instead of print to avoid end-of-line issues
* use os.devnull instead of hard-coding /dev/null

hg-fast-export.py
hg2git.py

index 49b2add..076d432 100755 (executable)
@@ -23,9 +23,9 @@ def gitmode(flags):
   return 'l' in flags and '120000' or 'x' in flags and '100755' or '100644'
 
 def wr(msg=''):
-  if msg == None:
-    msg = ''
-  print msg
+  if msg:
+    sys.stdout.write(msg)
+  sys.stdout.write('\n')
   #map(lambda x: sys.stderr.write('\t[%s]\n' % x),msg.split('\n'))
 
 def checkpoint(count):
index ecaac17..9c76dc8 100755 (executable)
--- a/hg2git.py
+++ b/hg2git.py
@@ -102,7 +102,7 @@ def save_cache(filename,cache):
 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 rev-parse --verify refs/%s/%s 2>%s" % (type,name,os.devnull)
     p=os.popen(cmd)
     l=p.readline()
     p.close()