[PATCH v2 6/9] remote-bzr: store converted URL

2013-04-25 Thread Felipe Contreras
Mercurial might convert the URL to something more appropriate, like an
absolute path. Lets store that instead of the original URL, which won't
work from a different working directory if it's relative.

Signed-off-by: Felipe Contreras felipe.contre...@gmail.com
---
 contrib/remote-helpers/git-remote-bzr | 13 -
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/contrib/remote-helpers/git-remote-bzr 
b/contrib/remote-helpers/git-remote-bzr
index f1d6d5e..dda2932 100755
--- a/contrib/remote-helpers/git-remote-bzr
+++ b/contrib/remote-helpers/git-remote-bzr
@@ -32,7 +32,7 @@ import os
 import json
 import re
 import StringIO
-import atexit, shutil, hashlib
+import atexit, shutil, hashlib, urlparse, subprocess
 
 NAME_RE = re.compile('^([^]+)')
 AUTHOR_RE = re.compile('^([^]+?)? ?([^]*)$')
@@ -713,6 +713,14 @@ def get_repo(url, alias):
 
 return branch
 
+def fix_path(alias, orig_url):
+url = urlparse.urlparse(orig_url, 'file')
+if url.scheme != 'file' or os.path.isabs(url.path):
+return
+abs_url = urlparse.urljoin(%s/ % os.getcwd(), orig_url)
+cmd = ['git', 'config', 'remote.%s.url' % alias, bzr::%s % abs_url]
+subprocess.call(cmd)
+
 def main(args):
 global marks, prefix, dirname
 global tags, filenodes
@@ -741,6 +749,9 @@ def main(args):
 gitdir = os.environ['GIT_DIR']
 dirname = os.path.join(gitdir, 'bzr', alias)
 
+if not is_tmp:
+fix_path(alias, url)
+
 if not os.path.exists(dirname):
 os.makedirs(dirname)
 
-- 
1.8.2.1.884.g3532a8d

--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v2 6/9] remote-bzr: store converted URL

2013-04-25 Thread John Szakmeister
On Thu, Apr 25, 2013 at 8:08 PM, Felipe Contreras
felipe.contre...@gmail.com wrote:
 Mercurial might convert the URL to something more appropriate, like an
 absolute path. Lets store that instead of the original URL, which won't
 work from a different working directory if it's relative.

 Signed-off-by: Felipe Contreras felipe.contre...@gmail.com
 ---
  contrib/remote-helpers/git-remote-bzr | 13 -
  1 file changed, 12 insertions(+), 1 deletion(-)


FWIW, it feels weird to be talking about Mercurial when you're
patching git-remote-bzr. :-)

-John
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH v2 6/9] remote-bzr: store converted URL

2013-04-25 Thread Felipe Contreras
On Thu, Apr 25, 2013 at 7:58 PM, John Szakmeister j...@szakmeister.net wrote:
 On Thu, Apr 25, 2013 at 8:08 PM, Felipe Contreras
 felipe.contre...@gmail.com wrote:
 Mercurial might convert the URL to something more appropriate, like an
 absolute path. Lets store that instead of the original URL, which won't
 work from a different working directory if it's relative.

 Signed-off-by: Felipe Contreras felipe.contre...@gmail.com
 ---
  contrib/remote-helpers/git-remote-bzr | 13 -
  1 file changed, 12 insertions(+), 1 deletion(-)


 FWIW, it feels weird to be talking about Mercurial when you're
 patching git-remote-bzr. :-)

Yeah, it happens all the time in my local repos. I'm surprised it took
so long to send a patch with this mistake =/

-- 
Felipe Contreras
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html