The test 't5800-remote-helpers.sh' hangs on my Linux desktop (where I have installed a custom simple-minded firewall based on iptables). This does not happen on remote systems I use for testing, so I guess the problem lies with my machine. Still, having the test to hang is unnecessarily harsh and user-unfriendly IMHO, and it would be better to detect the situation and SKIP or FAIL the affected test cases instead. For reference, here is the output of the test 't5800-remote-helpers.sh' run with the '-v' option: -*-*- Initialized empty Git repository in /devel/stefano/src/git/t/trash directory.t5800-remote-helpers/.git/ expecting success: git init --bare server/.git && git clone server public && (cd public && echo content >file && git add file && git commit -m one && git push origin master) Initialized empty Git repository in /devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server/.git/ Cloning into 'public'... warning: You appear to have cloned an empty repository. done. [master (root-commit) 9a7aa46] one Author: A U Thor <author@xxxxxxxxxxx> 1 file changed, 1 insertion(+) create mode 100644 file Counting objects: 3, done. Unpacking objects: 100% (3/3), done. Writing objects: 100% (3/3), 219 bytes, done. Total 3 (delta 0), reused 0 (delta 0) To /devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server * [new branch] master -> master ok 1 - setup repository expecting success: git clone "testgit::${PWD}/server" localclone && test_cmp public/file localclone/file Cloning into 'localclone'... ok 2 - cloning from local repo expecting success: git clone "testgit::file://${PWD}/server" clone && test_cmp public/file clone/file Cloning into 'clone'... ok 3 - cloning from remote repo expecting success: (cd public && echo content >>file && git commit -a -m two && git push) [master 0eb255a] two Author: A U Thor <author@xxxxxxxxxxx> 1 file changed, 1 insertion(+) Counting objects: 5, done. Unpacking objects: 100% (3/3), done. Writing objects: 100% (3/3), 252 bytes, done. Total 3 (delta 0), reused 0 (delta 0) To /devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server 9a7aa46..0eb255a master -> master ok 4 - create new commit on remote expecting success: (cd localclone && git pull) && test_cmp public/file localclone/file >From testgit::/devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server 9a7aa46..0eb255a master -> origin/master Updating 9a7aa46..0eb255a Fast-forward file | 1 + 1 file changed, 1 insertion(+) ok 5 - pulling from local repo expecting success: (cd clone && git pull) && test_cmp public/file clone/file >From testgit::file:///devel/stefano/src/git/t/trash directory.t5800-remote-helpers/server 9a7aa46..0eb255a master -> origin/master Updating 9a7aa46..0eb255a Fast-forward file | 1 + 1 file changed, 1 insertion(+) ok 6 - pulling from remote remote expecting success: (cd localclone && echo content >>file && git commit -a -m three && git push) && compare_refs localclone HEAD server HEAD [master 30d4cae] three Author: A U Thor <author@xxxxxxxxxxx> 1 file changed, 1 insertion(+) -*-*- At this point, the test hangs, and I have to manually kill it with a SIGINT, the result being: -*-*- Traceback (most recent call last): File "/devel/stefano/src/git/git-remote-testgit", line 265, in <module> sys.exit(main(sys.argv)) File "/devel/stefano/src/git/git-remote-testgit", line 262, in main more = read_one_line(repo) File "/devel/stefano/src/git/git-remote-testgit", line 227, in read_one_line func(repo, cmdline) File "/devel/stefano/src/git/git-remote-testgit", line 175, in do_export changed = repo.importer.do_import(repo.gitdir) File "/home/stefano/src/git/t/../git_remote_helpers/build/lib/git_remote_helpers/git/importer.py", line 54, in do_import check_call(args) File "/home/stefano/src/git/t/../git_remote_helpers/build/lib/git_remote_helpers/util.py", line 169, in check_call retcode = call(*popenargs, **kwargs) File "/home/stefano/src/git/t/../git_remote_helpers/build/lib/git_remote_helpers/util.py", line 155, in call return subprocess.Popen(*popenargs, **kwargs).wait() File "/usr/lib/python2.7/subprocess.py", line 1291, in wait pid, sts = _eintr_retry_call(os.waitpid, self.pid, 0) File "/usr/lib/python2.7/subprocess.py", line 478, in _eintr_retry_call return func(*args) KeyboardInterrupt FATAL: Unexpected exit with code 0 -*-*- If I run ps(1) in another terminal before interrupting the hung test, the following command sticks out as a possible culprit: git-fast-import --quiet --export-marks=/devel/stefano/src/git/t/trash \ directory.t5800-remote-helpers/localclone/.git/info/fast-import/\ c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/git.marks \ --import-marks=/devel/stefano/src/git/t/'trash directory.t5800-remote-helpers'/\ localclone/.git/info/fast-import/c6c0871f9a7f12cd3f51aa290fbed7c49f539a8c/\ git.marks -*-*- Other possibly relevant information: $ hg --version | head -1 Mercurial Distributed SCM (version 1.8.3) $ python --version $ python --version Python 2.7.2+ $ /bin/sh --version | head -1 GNU bash, version 4.1.5(1)-release (i486-pc-linux-gnu) $ git describe v1.7.10-167-gf245c01 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html