"Do you have C Git installed on your local system?" Yes. This is the source of the repository. I git clone / git pull from a server into a local git repository, then I hg clone / hg pull from the local git repository into a local hg repository.
"it should be a matter of replacing…" OK, I will try this today and let you know what happens. On Wed, Dec 18, 2013 at 10:03 AM, Jelmer Vernooij <[email protected]> wrote: > On Wed, Dec 18, 2013 at 09:45:15AM -0800, Andi McClure wrote: > > Hello, I have been meaning to email this list about this. I have been > > seeing a similar problem for the last week. > > > > I have a large (>1GB) repository I work with. I used hg-git several times > > to push and pull from it with success. I always push/pull *locally*, > i.e., > > from a local git checkout, I don't push/pull to the server using > > hg-git/dulwich. Eventually, one day, out of the blue, whenever I tried to > > push *or* pull I started to get a stack like: > > > > I then re-cloned a new local hg repository from the local git repository > > (an arduous process with hg-git). Once I did this, the newly cloned hg > > repository could again read and write from the local git repository. > > However, a week later, this broke again with the same problem. > > > > One more thing. Let's say I patch hg-git, such that when the "size = > > int(sizestr, 16)" line where the problem always occurs is reached, I > first > > print "sizestr". It turns out to be equal to the following two lines: > > GIT: > > upload-pack /home/REDACTED/REDACTED > > Do you have C Git installed on your local system? > > > (Of course REDACTED/REDACTED was in the original the path to the git > > repository I am pulling/pushing.) > > > > This was on Ubuntu Linux BTW. I am using the newest release Dulwich and a > > slightly out of date, slightly patched version of hg-git. > > > > What should I do? > > > > "Can you try patching hg-git so it uses LocalGitClient rather than > > SubprocessGitClient? " > > > > Does this just mean swapping out a class? Are the APIs/external > interfaces > > for these classes at all different? > I'm not familiar with hg-git's internals, but if it's just using the > standard Dulwich function > to get a local client, then it should be a matter of replacing: > > default_local_git_client_cls = SubprocessGitClient > > with: > > default_local_git_client_cls = LocalGitClient > > in dulwich/client.py > > Cheers, > > Jelmer > > > On Wed, Dec 18, 2013 at 8:12 AM, Jelmer Vernooij <[email protected]> > wrote: > > > > > On Wed, Dec 18, 2013 at 05:38:56PM +0300, anatoly techtonik wrote: > > > > On Wed, Dec 18, 2013 at 3:24 PM, Jelmer Vernooij <[email protected]> > > > wrote: > > > > > On Wed, Dec 18, 2013 at 02:36:54PM +0300, anatoly techtonik wrote: > > > > >> I try to clone my repository from GitHub with hg-git and it fails. > > > > >> Dulwich 1.9.4, Hg-Git 0.5.0, Windows. > > > > >> Please, CC. > > > > >> > > > > >> destination directory: recordscreen > > > > >> ["git-upload-pack '/techtonik/recordscreen'"] > > > > >> ** Unknown exception encountered with possibly-broken third-party > > > > >> extension hggit > > > > >> ** which supports versions 2.2.3 of Mercurial. > > > > >> ** Please disable hggit and try your action again. > > > > >> ** If that fixes the bug please report it to > > > > >> https://bitbucket.org/durin42/hg-git/issues > > > > >> ** Python 2.7.5 (default, May 15 2013, 22:43:36) [MSC v.1500 32 > bit > > > (Intel)] > > > > >> ** Mercurial Distributed SCM (version 2.8) > > > > >> ** Extensions loaded: churn, color, convert, evolve, hggit, > strip, mq, > > > > >> rebase, record > > > > >> Traceback (most recent call last): > > > > >> File "hg", line 38, in <module> > > > > >> File "mercurial\dispatch.pyc", line 28, in run > > > > >> File "mercurial\dispatch.pyc", line 69, in dispatch > > > > >> File "mercurial\dispatch.pyc", line 133, in _runcatch > > > > >> File "mercurial\dispatch.pyc", line 806, in _dispatch > > > > >> File "mercurial\dispatch.pyc", line 585, in runcommand > > > > >> File "mercurial\extensions.pyc", line 196, in wrap > > > > >> File "hgext\color.pyc", line 419, in colorcmd > > > > >> File "mercurial\dispatch.pyc", line 897, in _runcommand > > > > >> File "mercurial\dispatch.pyc", line 868, in checkargs > > > > >> File "mercurial\dispatch.pyc", line 803, in <lambda> > > > > >> File "mercurial\util.pyc", line 512, in check > > > > >> File "mercurial\commands.pyc", line 1282, in clone > > > > >> File "mercurial\hg.pyc", line 372, in clone > > > > >> File "mercurial\localrepo.pyc", line 2431, in clone > > > > >> File "C:\hg-git\hggit\hgrepo.py", line 14, in pull > > > > >> return git.fetch(remote.path, heads) > > > > >> File "C:\hg-git\hggit\git_handler.py", line 205, in fetch > > > > >> refs = self.fetch_pack(remote, heads) > > > > >> File "C:\hg-git\hggit\git_handler.py", line 1016, in fetch_pack > > > > >> ret = client.fetch_pack(path, determine_wants, graphwalker, > > > > >> f.write, progress.progress) > > > > >> File "dulwich\client.pyc", line 527, in fetch_pack > > > > >> File "dulwich\client.pyc", line 144, in read_pkt_refs > > > > >> File "dulwich\protocol.pyc", line 147, in read_pkt_seq > > > > >> File "dulwich\protocol.pyc", line 104, in read_pkt_line > > > > >> ValueError: invalid literal for int() with base 16: 'logi' > > > > > > > > > > Can you reproduce it with dulwich clone (without hg-git)? Is there > an > > > easy way > > > > > for us to reproduce this? > > > > No. I can't reproduce this error with "dulwich clone". > > > Can you try patching hg-git so it uses LocalGitClient rather than > > > SubprocessGitClient? Does that fix the issue? > > > > > > > > py dulwich-cli.py clone git+ssh://github.com/jelmer/dulwich.gitaaa > > > > Traceback (most recent call last): > > > > File "dulwich-cli.py", line 253, in <module> > > > > commands[cmd](sys.argv[2:]) > > > > File "dulwich-cli.py", line 174, in cmd_clone > > > > porcelain.clone(source, target, bare=("--bare" in opts)) > > > > File "C:\hg-git\dulwich\porcelain.py", line 167, in clone > > > > progress=outstream.write) > > > > File "C:\hg-git\dulwich\client.py", line 212, in fetch > > > > target.get_graph_walker(), f.write, progress) > > > > File "C:\hg-git\dulwich\client.py", line 521, in fetch_pack > > > > proto, can_read = self._connect('upload-pack', path) > > > > File "C:\hg-git\dulwich\client.py", line 881, in _connect > > > > port=self.port, username=self.username) > > > > File "C:\hg-git\dulwich\client.py", line 744, in run_command > > > > stdout=subprocess.PIPE) > > > > File "C:\Python27\lib\subprocess.py", line 709, in __init__ > > > > errread, errwrite) > > > > File "C:\Python27\lib\subprocess.py", line 957, in _execute_child > > > > startupinfo) > > > > WindowsError: [Error 2] The system cannot find the file specified > > > This is almost referring to SSH. Do you have SSH installed and > accessible > > > from > > > the path on Windows? > > > > > > Cheers, > > > > > > Jelmer > > > > > > _______________________________________________ > > > Mailing list: https://launchpad.net/~dulwich-users > > > Post to : [email protected] > > > Unsubscribe : https://launchpad.net/~dulwich-users > > > More help : https://help.launchpad.net/ListHelp > > > > > -- >
_______________________________________________ Mailing list: https://launchpad.net/~dulwich-users Post to : [email protected] Unsubscribe : https://launchpad.net/~dulwich-users More help : https://help.launchpad.net/ListHelp

