dusty-phillips / gitifyhg

Tools for using git as a client to mercurial repositories
GNU General Public License v3.0
62 stars 17 forks source link

Clone fails #69

Closed PaulPrice closed 11 years ago

PaulPrice commented 11 years ago

Here's a cut/paste of the command and resulting output. I'm happy to provide more information as requested.

git-remote-hg (commit 864b5c41e472f2411d11620d3841b2b0dfceb9ec) works.

pprice@tiger3:~/test $ git clone gitifyhg::ssh://mitaka//ana/hgrepo/hscPipe
Cloning into 'hscPipe'...
error: refs/remotes/origin/branches/Winter2012d does not point to a valid object!
error: refs/remotes/origin/branches/forced-model-phot does not point to a valid object!
error: refs/remotes/origin/branches/hscPipe1.4.4 does not point to a valid object!
error: refs/remotes/origin/branches/hsc_onsite does not point to a valid object!
error: refs/remotes/origin/branches/hsc_onsite2 does not point to a valid object!
error: refs/remotes/origin/branches/hsc_onsite3 does not point to a valid object!
error: refs/remotes/origin/branches/price does not point to a valid object!
error: refs/remotes/origin/branches/stage-ncsa-2 does not point to a valid object!
error: refs/remotes/origin/branches/stage-ncsa-3 does not point to a valid object!
error: refs/remotes/origin/branches/stage-ncsa-4 does not point to a valid object!
error: refs/remotes/origin/branches/tickets/2140 does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
error: refs/tags/1.0.0 does not point to a valid object!
error: refs/tags/1.0.1 does not point to a valid object!
error: refs/tags/1.0.2 does not point to a valid object!
error: refs/tags/1.0.3 does not point to a valid object!
error: refs/tags/1.0.4 does not point to a valid object!
error: refs/tags/1.0.5 does not point to a valid object!
error: refs/tags/1.1.0 does not point to a valid object!
error: refs/tags/1.1.1 does not point to a valid object!
error: refs/tags/1.10.0 does not point to a valid object!
error: refs/tags/1.10.1 does not point to a valid object!
error: refs/tags/1.10.2 does not point to a valid object!
error: refs/tags/1.10.3 does not point to a valid object!
error: refs/tags/1.10.4 does not point to a valid object!
error: refs/tags/1.11.0 does not point to a valid object!
error: refs/tags/1.11.1 does not point to a valid object!
error: refs/tags/1.11.2 does not point to a valid object!
error: refs/tags/1.12.0 does not point to a valid object!
error: refs/tags/1.12.1 does not point to a valid object!
error: refs/tags/1.13.0 does not point to a valid object!
error: refs/tags/1.2.0 does not point to a valid object!
error: refs/tags/1.3.0 does not point to a valid object!
error: refs/tags/1.4.0 does not point to a valid object!
error: refs/tags/1.4.1 does not point to a valid object!
error: refs/tags/1.4.2 does not point to a valid object!
error: refs/tags/1.4.3 does not point to a valid object!
error: refs/tags/1.4.4 does not point to a valid object!
error: refs/tags/1.5.0 does not point to a valid object!
error: refs/tags/1.5.1 does not point to a valid object!
error: refs/tags/1.6.0 does not point to a valid object!
error: refs/tags/1.7.0 does not point to a valid object!
error: refs/tags/1.8.0 does not point to a valid object!
error: refs/tags/1.8.1 does not point to a valid object!
error: refs/tags/1.9.0 does not point to a valid object!
error: refs/tags/1.9.1 does not point to a valid object!
error: refs/tags/2.0.0 does not point to a valid object!
error: refs/tags/2.1.0 does not point to a valid object!
error: refs/tags/2.2.0 does not point to a valid object!
error: refs/tags/2.2.1 does not point to a valid object!
error: refs/tags/HSC-unstable does not point to a valid object!
error: refs/tags/HSC-unstable-3.0 does not point to a valid object!
error: refs/tags/HSC-unstable-3.1 does not point to a valid object!
error: refs/tags/HSC-unstable-3.2 does not point to a valid object!
error: refs/tags/HSC-unstable-3.3 does not point to a valid object!
error: refs/tags/HSC-unstable-4.0 does not point to a valid object!
error: refs/tags/HSC-unstable-4.1 does not point to a valid object!
error: Trying to write ref refs/heads/master with nonexistent object 0000000000000000000000000000000000000000
fatal: Cannot update the ref 'HEAD'.
Traceback (most recent call last):
  File "/home/pprice/local/Linux.x86_64/bin/git-remote-gitifyhg", line 9, in <module>
    load_entry_point('gitifyhg==0.8.1', 'console_scripts', 'git-remote-gitifyhg')()
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/gitifyhg-0.8.1-py2.6.egg/gitifyhg/gitifyhg.py", line 262, in main
    HGRemote(*[x.decode('utf-8') for x in sys.argv[1:3]]).process()
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/gitifyhg-0.8.1-py2.6.egg/gitifyhg/gitifyhg.py", line 175, in process
    self.marks.store()
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/gitifyhg-0.8.1-py2.6.egg/gitifyhg/util.py", line 116, in store
    with self.storage_path.open('w') as file:
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/path.py-3.0.1-py2.6.egg/path.py", line 589, in open
pprice@tiger3:~/test $     return open(self, mode)
IOError: [Errno 2] No such file or directory: path(u'/home/pprice/test/hscPipe/.git/hg/326df9a5b3e17503555a0e0c3388c7b67353e8ad/marks-hg')
pprice@tiger3:~/test $ git clone hg::ssh://mitaka//ana/hgrepo/hscPipe
Cloning into 'hscPipe'...
progress revision 99 'master' (100/516)
progress revision 199 'master' (200/516)
progress revision 299 'master' (300/516)
progress revision 399 'master' (400/516)
progress revision 499 'master' (500/516)
dusty-phillips commented 11 years ago

Can you run it with GITIFYHG_DEBUG=on git clone gitifyhg::ssh://mitaka//ana/hgrepo/hscPipe? You'll get a ton of output on stderr that you'll need to capture.

PaulPrice commented 11 years ago

Doesn't produce a whole lot more output.

pprice@tiger3:~/test $ GITIFYHG_DEBUG=on git clone gitifyhg::ssh://mitaka//ana/hgrepo/hscPipe > gitify.out 2>&1
Cloning into 'hscPipe'...
error: refs/remotes/origin/branches/Winter2012d does not point to a valid object!
error: refs/remotes/origin/branches/forced-model-phot does not point to a valid object!
error: refs/remotes/origin/branches/hscPipe1.4.4 does not point to a valid object!
error: refs/remotes/origin/branches/hsc_onsite does not point to a valid object!
error: refs/remotes/origin/branches/hsc_onsite2 does not point to a valid object!
error: refs/remotes/origin/branches/hsc_onsite3 does not point to a valid object!
error: refs/remotes/origin/branches/price does not point to a valid object!
error: refs/remotes/origin/branches/stage-ncsa-2 does not point to a valid object!
error: refs/remotes/origin/branches/stage-ncsa-3 does not point to a valid object!
error: refs/remotes/origin/branches/stage-ncsa-4 does not point to a valid object!
error: refs/remotes/origin/branches/tickets/2140 does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
error: refs/tags/1.0.0 does not point to a valid object!
error: refs/tags/1.0.1 does not point to a valid object!
error: refs/tags/1.0.2 does not point to a valid object!
error: refs/tags/1.0.3 does not point to a valid object!
error: refs/tags/1.0.4 does not point to a valid object!
error: refs/tags/1.0.5 does not point to a valid object!
error: refs/tags/1.1.0 does not point to a valid object!
error: refs/tags/1.1.1 does not point to a valid object!
error: refs/tags/1.10.0 does not point to a valid object!
error: refs/tags/1.10.1 does not point to a valid object!
error: refs/tags/1.10.2 does not point to a valid object!
error: refs/tags/1.10.3 does not point to a valid object!
error: refs/tags/1.10.4 does not point to a valid object!
error: refs/tags/1.11.0 does not point to a valid object!
error: refs/tags/1.11.1 does not point to a valid object!
error: refs/tags/1.11.2 does not point to a valid object!
error: refs/tags/1.12.0 does not point to a valid object!
error: refs/tags/1.12.1 does not point to a valid object!
error: refs/tags/1.13.0 does not point to a valid object!
error: refs/tags/1.2.0 does not point to a valid object!
error: refs/tags/1.3.0 does not point to a valid object!
error: refs/tags/1.4.0 does not point to a valid object!
error: refs/tags/1.4.1 does not point to a valid object!
error: refs/tags/1.4.2 does not point to a valid object!
error: refs/tags/1.4.3 does not point to a valid object!
error: refs/tags/1.4.4 does not point to a valid object!
error: refs/tags/1.5.0 does not point to a valid object!
error: refs/tags/1.5.1 does not point to a valid object!
error: refs/tags/1.6.0 does not point to a valid object!
error: refs/tags/1.7.0 does not point to a valid object!
error: refs/tags/1.8.0 does not point to a valid object!
error: refs/tags/1.8.1 does not point to a valid object!
error: refs/tags/1.9.0 does not point to a valid object!
error: refs/tags/1.9.1 does not point to a valid object!
error: refs/tags/2.0.0 does not point to a valid object!
error: refs/tags/2.1.0 does not point to a valid object!
error: refs/tags/2.2.0 does not point to a valid object!
error: refs/tags/2.2.1 does not point to a valid object!
error: refs/tags/HSC-unstable does not point to a valid object!
error: refs/tags/HSC-unstable-3.0 does not point to a valid object!
error: refs/tags/HSC-unstable-3.1 does not point to a valid object!
error: refs/tags/HSC-unstable-3.2 does not point to a valid object!
error: refs/tags/HSC-unstable-3.3 does not point to a valid object!
error: refs/tags/HSC-unstable-4.0 does not point to a valid object!
error: refs/tags/HSC-unstable-4.1 does not point to a valid object!
error: Trying to write ref refs/heads/master with nonexistent object 0000000000000000000000000000000000000000
fatal: Cannot update the ref 'HEAD'.
Traceback (most recent call last):
  File "/home/pprice/local/Linux.x86_64/bin/git-remote-gitifyhg", line 9, in <module>
    load_entry_point('gitifyhg==0.8.1', 'console_scripts', 'git-remote-gitifyhg')()
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/gitifyhg-0.8.1-py2.6.egg/gitifyhg/gitifyhg.py", line 262, in main
    HGRemote(*[x.decode('utf-8') for x in sys.argv[1:3]]).process()
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/gitifyhg-0.8.1-py2.6.egg/gitifyhg/gitifyhg.py", line 175, in process
    self.marks.store()
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/gitifyhg-0.8.1-py2.6.egg/gitifyhg/util.py", line 116, in store
    with self.storage_path.open('w') as file:
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/path.py-3.0.1-py2.6.egg/path.py", line 589, in open
    return open(self, mode)
IOError: [Errno 2] No such file or directory: path(u'/home/pprice/test/hscPipe/.git/hg/326df9a5b3e17503555a0e0c3388c7b67353e8ad/marks-hg')
dusty-phillips commented 11 years ago

That's because our README is wrong. :( The env var should be named DEBUG_GITIFYHG.

PaulPrice commented 11 years ago

Aha! That'll do it. Want a separate issue to fix the README?

Cloning into 'hscPipe'...
DEBUG: 'INPUT: capabilities'
DEBUG: 'OUT: import'
DEBUG: 'OUT: export'
DEBUG: 'OUT: refspec refs/heads/branches/*:refs/hg/origin/branches/*'
DEBUG: 'OUT: refspec refs/heads/*:refs/hg/origin/bookmarks/*'
DEBUG: 'OUT: refspec refs/tags/*:refs/hg/origin/tags/*'
DEBUG: 'OUT: *export-marks /home/pprice/test/hscPipe/.git/hg/326df9a5b3e17503555a0e0c3388c7b67353e8ad/marks-git'
DEBUG: 'OUT: '
DEBUG: 'INPUT: list'
DEBUG: 'OUT: @refs/heads/master HEAD'
DEBUG: 'OUT: ? refs/heads/branches/Winter2012d'
DEBUG: 'OUT: ? refs/heads/master'
DEBUG: 'OUT: ? refs/heads/branches/stage-ncsa-4'
DEBUG: 'OUT: ? refs/heads/branches/price'
DEBUG: 'OUT: ? refs/heads/branches/hsc_onsite2'
DEBUG: 'OUT: ? refs/heads/branches/hsc_onsite'
DEBUG: 'OUT: ? refs/heads/branches/stage-ncsa-3'
DEBUG: 'OUT: ? refs/heads/branches/hscPipe1.4.4'
DEBUG: 'OUT: ? refs/heads/branches/forced-model-phot'
DEBUG: 'OUT: ? refs/heads/branches/tickets/2140'
DEBUG: 'OUT: ? refs/heads/branches/hsc_onsite3'
DEBUG: 'OUT: ? refs/heads/branches/stage-ncsa-2'
DEBUG: 'OUT: ? refs/tags/1.0.0'
DEBUG: 'OUT: ? refs/tags/1.0.1'
DEBUG: 'OUT: ? refs/tags/1.0.2'
DEBUG: 'OUT: ? refs/tags/1.0.3'
DEBUG: 'OUT: ? refs/tags/1.0.4'
DEBUG: 'OUT: ? refs/tags/1.0.5'
DEBUG: 'OUT: ? refs/tags/1.1.0'
DEBUG: 'OUT: ? refs/tags/1.1.1'
DEBUG: 'OUT: ? refs/tags/1.2.0'
DEBUG: 'OUT: ? refs/tags/1.3.0'
DEBUG: 'OUT: ? refs/tags/1.4.0'
DEBUG: 'OUT: ? refs/tags/1.4.1'
DEBUG: 'OUT: ? refs/tags/1.4.2'
DEBUG: 'OUT: ? refs/tags/1.4.3'
DEBUG: 'OUT: ? refs/tags/1.4.4'
DEBUG: 'OUT: ? refs/tags/1.5.0'
DEBUG: 'OUT: ? refs/tags/1.5.1'
DEBUG: 'OUT: ? refs/tags/1.6.0'
DEBUG: 'OUT: ? refs/tags/1.7.0'
DEBUG: 'OUT: ? refs/tags/HSC-unstable'
DEBUG: 'OUT: ? refs/tags/HSC-unstable-3.0'
DEBUG: 'OUT: ? refs/tags/HSC-unstable-3.1'
DEBUG: 'OUT: ? refs/tags/HSC-unstable-3.2'
DEBUG: 'OUT: ? refs/tags/HSC-unstable-3.3'
DEBUG: 'OUT: ? refs/tags/HSC-unstable-4.0'
DEBUG: 'OUT: ? refs/tags/HSC-unstable-4.1'
DEBUG: 'OUT: ? refs/tags/1.8.0'
DEBUG: 'OUT: ? refs/tags/1.8.1'
DEBUG: 'OUT: ? refs/tags/1.9.0'
DEBUG: 'OUT: ? refs/tags/1.9.1'
DEBUG: 'OUT: ? refs/tags/1.10.0'
DEBUG: 'OUT: ? refs/tags/1.10.1'
DEBUG: 'OUT: ? refs/tags/1.10.2'
DEBUG: 'OUT: ? refs/tags/1.10.3'
DEBUG: 'OUT: ? refs/tags/1.10.4'
DEBUG: 'OUT: ? refs/tags/1.11.0'
DEBUG: 'OUT: ? refs/tags/1.11.1'
DEBUG: 'OUT: ? refs/tags/1.11.2'
DEBUG: 'OUT: ? refs/tags/1.12.0'
DEBUG: 'OUT: ? refs/tags/1.12.1'
DEBUG: 'OUT: ? refs/tags/1.13.0'
DEBUG: 'OUT: ? refs/tags/2.0.0'
DEBUG: 'OUT: ? refs/tags/2.1.0'
DEBUG: 'OUT: ? refs/tags/2.2.0'
DEBUG: 'OUT: ? refs/tags/2.2.1'
DEBUG: 'OUT: '
error: refs/remotes/origin/branches/Winter2012d does not point to a valid object!
error: refs/remotes/origin/branches/forced-model-phot does not point to a valid object!
error: refs/remotes/origin/branches/hscPipe1.4.4 does not point to a valid object!
error: refs/remotes/origin/branches/hsc_onsite does not point to a valid object!
error: refs/remotes/origin/branches/hsc_onsite2 does not point to a valid object!
error: refs/remotes/origin/branches/hsc_onsite3 does not point to a valid object!
error: refs/remotes/origin/branches/price does not point to a valid object!
error: refs/remotes/origin/branches/stage-ncsa-2 does not point to a valid object!
error: refs/remotes/origin/branches/stage-ncsa-3 does not point to a valid object!
error: refs/remotes/origin/branches/stage-ncsa-4 does not point to a valid object!
error: refs/remotes/origin/branches/tickets/2140 does not point to a valid object!
error: refs/remotes/origin/master does not point to a valid object!
error: refs/tags/1.0.0 does not point to a valid object!
error: refs/tags/1.0.1 does not point to a valid object!
error: refs/tags/1.0.2 does not point to a valid object!
error: refs/tags/1.0.3 does not point to a valid object!
error: refs/tags/1.0.4 does not point to a valid object!
error: refs/tags/1.0.5 does not point to a valid object!
error: refs/tags/1.1.0 does not point to a valid object!
error: refs/tags/1.1.1 does not point to a valid object!
error: refs/tags/1.10.0 does not point to a valid object!
error: refs/tags/1.10.1 does not point to a valid object!
error: refs/tags/1.10.2 does not point to a valid object!
error: refs/tags/1.10.3 does not point to a valid object!
error: refs/tags/1.10.4 does not point to a valid object!
error: refs/tags/1.11.0 does not point to a valid object!
error: refs/tags/1.11.1 does not point to a valid object!
error: refs/tags/1.11.2 does not point to a valid object!
error: refs/tags/1.12.0 does not point to a valid object!
error: refs/tags/1.12.1 does not point to a valid object!
error: refs/tags/1.13.0 does not point to a valid object!
error: refs/tags/1.2.0 does not point to a valid object!
error: refs/tags/1.3.0 does not point to a valid object!
error: refs/tags/1.4.0 does not point to a valid object!
error: refs/tags/1.4.1 does not point to a valid object!
error: refs/tags/1.4.2 does not point to a valid object!
error: refs/tags/1.4.3 does not point to a valid object!
error: refs/tags/1.4.4 does not point to a valid object!
error: refs/tags/1.5.0 does not point to a valid object!
error: refs/tags/1.5.1 does not point to a valid object!
error: refs/tags/1.6.0 does not point to a valid object!
error: refs/tags/1.7.0 does not point to a valid object!
error: refs/tags/1.8.0 does not point to a valid object!
error: refs/tags/1.8.1 does not point to a valid object!
error: refs/tags/1.9.0 does not point to a valid object!
error: refs/tags/1.9.1 does not point to a valid object!
error: refs/tags/2.0.0 does not point to a valid object!
error: refs/tags/2.1.0 does not point to a valid object!
error: refs/tags/2.2.0 does not point to a valid object!
error: refs/tags/2.2.1 does not point to a valid object!
error: refs/tags/HSC-unstable does not point to a valid object!
error: refs/tags/HSC-unstable-3.0 does not point to a valid object!
error: refs/tags/HSC-unstable-3.1 does not point to a valid object!
error: refs/tags/HSC-unstable-3.2 does not point to a valid object!
error: refs/tags/HSC-unstable-3.3 does not point to a valid object!
error: refs/tags/HSC-unstable-4.0 does not point to a valid object!
error: refs/tags/HSC-unstable-4.1 does not point to a valid object!
error: Trying to write ref refs/heads/master with nonexistent object 0000000000000000000000000000000000000000
fatal: Cannot update the ref 'HEAD'.
DEBUG: 'INPUT: '
Traceback (most recent call last):
  File "/home/pprice/local/Linux.x86_64/bin/git-remote-gitifyhg", line 9, in <module>
    load_entry_point('gitifyhg==0.8.1', 'console_scripts', 'git-remote-gitifyhg')()
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/gitifyhg-0.8.1-py2.6.egg/gitifyhg/gitifyhg.py", line 262, in main
    HGRemote(*[x.decode('utf-8') for x in sys.argv[1:3]]).process()
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/gitifyhg-0.8.1-py2.6.egg/gitifyhg/gitifyhg.py", line 175, in process
    self.marks.store()
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/gitifyhg-0.8.1-py2.6.egg/gitifyhg/util.py", line 116, in store
    with self.storage_path.open('w') as file:
  File "/home/pprice/local/Linux.x86_64/lib/python2.6/site-packages/path.py-3.0.1-py2.6.egg/path.py", line 589, in open
    return open(self, mode)
IOError: [Errno 2] No such file or directory: path(u'/home/pprice/test/hscPipe/.git/hg/326df9a5b3e17503555a0e0c3388c7b67353e8ad/marks-hg')
PaulPrice commented 11 years ago

Oh, I should mention that the command works fine on other systems, but not on this one. This system uses python 2.6.6, hg 2.5.2, git 1.8.2, and gitifyhg 0.8.1. It does work on a system with python 2.7.3, hg 2.0.2, git 1.7.9.5 and gitifyhg 0.8.1.

PaulPrice commented 11 years ago

I think I've figured this out. If I make stdout (the link to git) unbuffered, the problem goes away.

PaulPrice commented 11 years ago

My theory is that the buffering disrupted the flow of information to git, e.g., filling up with only part of the information, so that git wasn't receiving everything it needed, and it therefore produced errors. In any case, this fixes my problem, and I think is more correct in general.

dusty-phillips commented 11 years ago

EXCELLENT!

Except: Whoops, I merged another pull request and this one won't apply cleanly now. I know it's a one-line fix, but can you redo it so the commit stays attributed to you?

PaulPrice commented 11 years ago

Rebased against master, cleaned up conflicts, and force-pushed (hoping that's the right thing to do).

dusty-phillips commented 11 years ago

Perfect. Thanks. I'm gonna test this right away against cloning pypy, I'm wondering if it will also allow closing #62.