[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#1006038: marked as done (git-remote-hg: FTBFS: dh_auto_test: error: make -j8 test returned exit code 2)



Your message dated Wed, 23 Feb 2022 23:18:54 +0000
with message-id <E1nN0uM-0007h0-KO@fasolo.debian.org>
and subject line Bug#1006038: fixed in git-remote-hg 1.0.3.2~ds-1
has caused the Debian Bug report #1006038,
regarding git-remote-hg: FTBFS: dh_auto_test: error: make -j8 test returned exit code 2
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
1006038: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1006038
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Source: git-remote-hg
Version: 1.0.2.1~ds-3
Severity: serious
Justification: FTBFS
Tags: bookworm sid ftbfs

Hi,

During a rebuild of all packages in sid, your package failed to build
on amd64.


Relevant part (hopefully):
> make[3]: Entering directory '/<<PKGBUILDDIR>>/test'
> /bin/sh main.t --verbose
> /bin/sh main-push.t --verbose
> /bin/sh bidi.t --verbose
> /bin/sh helper.t --verbose
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_repos &&
> 
> 	(
> 	cd gitrepo &&
> 	test_expect_code 2 git-hg-helper help 2> ../help
> 	)
> 	# remotes should be in help output
> 	grep origin help
> 
> expecting success: 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero
> 	)
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	(
> 	git init -q gitrepo &&
> 	cd gitrepo &&
> 
> 	echo alpha > alpha &&
> 	git add alpha &&
> 	git commit -m "add älphà" &&
> 
> 	GIT_AUTHOR_NAME="tést èncödîng" &&
> 	export GIT_AUTHOR_NAME &&
> 	echo beta > beta &&
> 	git add beta &&
> 	git commit -m "add beta" &&
> 
> 	echo gamma > gamma &&
> 	git add gamma &&
> 	git commit -m "add gämmâ" &&
> 
> 	: TODO git config i18n.commitencoding latin-1 &&
> 	echo delta > delta &&
> 	git add delta &&
> 	git commit -m "add déltà"
> 	) &&
> 
> 	hg_clone gitrepo hgrepo &&
> 	git_clone hgrepo gitrepo2 &&
> 	hg_clone gitrepo2 hgrepo2 &&
> 
> 	HGENCODING=utf-8 hg_log hgrepo > expected &&
> 	HGENCODING=utf-8 hg_log hgrepo2 > actual &&
> 
> 	test_cmp expected actual
> 
> expecting success: 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero
> 	)
> 
> [master (root-commit) 79c6ce2] add älphà
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 alpha
> [master 68b42de] add beta
>  Author: tést èncödîng <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 beta
> [master 8ee0762] add gämmâ
>  Author: tést èncödîng <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 gamma
> [master 3b0b48f] add déltà
>  Author: tést èncödîng <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 delta
> no changes found
> searching for changes
> adding changesets
> adding manifests
> ok 1 - setup
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo HEAD zero
> 
> adding file changes
> Cloning into 'gitrepo'...
> added 4 changesets with 4 changes to 4 files
> ok 1 - setup
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo HEAD zero
> 
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets be49376660c1
> adding changesets
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> adding manifests
> adding changesets
> adding file changes
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets be49376660c1
> added 1 changesets with 1 changes to 1 files
> new changesets be49376660c1
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> ok 2 - cloning
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg branch next &&
> 	echo next > content &&
> 	hg commit -m next
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo origin/branches/next next
> 
> ok 2 - cloning
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg branch next &&
> 	echo next > content &&
> 	hg commit -m next
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo origin/branches/next next
> 
> marked working directory as branch next
> (branches are permanent and global, did you want a bookmark?)
> adding changesets
> adding manifests
> adding file changes
> added 4 changesets with 4 changes to 4 files
> new changesets 1e3e49d2cc8f:6674f1c866b5
> marked working directory as branch next
> (branches are permanent and global, did you want a bookmark?)
> progress revision walk 'bookmarks/master' (3/3)
> progress revision 0 'master' (0/4)
> 	origin
> ok 1 - subcommand help
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_repos &&
> 
> 	(
> 	cd hgrepo &&
> 	pwd >../expected
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git-hg-helper repo origin > ../actual
> 	) &&
> 
> 	test_cmp expected actual
> 
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding changesets
> adding manifests
> added 2 changesets with 2 changes to 1 files
> adding file changes
> new changesets be49376660c1:f64406591975
> added 2 changesets with 2 changes to 1 files
> new changesets be49376660c1:f64406591975
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision 1 'next' (0/1)
> searching for changes
> no changes found
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision 1 'next' (0/1)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 4 changesets with 4 changes to 4 files
> ok 3 - cloning with branches
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg checkout default &&
> 	hg bookmark feature-a &&
> 	echo feature-a > content &&
> 	hg commit -m feature-a
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo origin/feature-a feature-a
> 
> ok 3 - cloning with branches
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg checkout default &&
> 	hg bookmark feature-a &&
> 	echo feature-a > content &&
> 	hg commit -m feature-a
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo origin/feature-a feature-a
> 
> Cloning into 'gitrepo'...
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> ok 1 - encoding
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	(
> 	git init -q gitrepo &&
> 	cd gitrepo &&
> 	echo alpha > alpha &&
> 	git add alpha &&
> 	git commit -m "add alpha" &&
> 	echo beta > beta &&
> 	git add beta &&
> 	git commit -m "add beta"
> 	mkdir foo &&
> 	echo blah > foo/bar &&
> 	git add foo &&
> 	git commit -m "add foo" &&
> 	git rm alpha &&
> 	git commit -m "remove alpha" &&
> 	git rm foo/bar &&
> 	git commit -m "remove foo/bar"
> 	) &&
> 
> 	hg_clone gitrepo hgrepo &&
> 	git_clone hgrepo gitrepo2 &&
> 	hg_clone gitrepo2 hgrepo2 &&
> 
> 	hg_log hgrepo > expected &&
> 	hg_log hgrepo2 > actual &&
> 
> 	test_cmp expected actual
> 
> [master (root-commit) 223a6f6] add alpha
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 alpha
> [master 862befc] add beta
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 beta
> [master 86bf00d] add foo
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 foo/bar
> rm 'alpha'
> [master 74dc957] remove alpha
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 deletion(-)
>  delete mode 100644 alpha
> rm 'foo/bar'
> [master ea36818] remove foo/bar
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 deletion(-)
>  delete mode 100644 foo/bar
> ok 2 - subcommand repo - no local proxy
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_repos &&
> 
> 	(
> 	cd gitrepo &&
> 	export gitdir=`git rev-parse --git-dir`
> 	# trick to normalize path
> 	( cd $gitdir/hg/origin/clone && pwd ) >../expected &&
> 	( cd `git-hg-helper repo origin` && pwd ) > ../actual
> 	) &&
> 
> 	test_cmp expected actual
> 
> adding changesets
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding manifests
> adding file changes
> adding remote bookmark feature-a
> added 3 changesets with 3 changes to 1 files (+1 heads)
> new changesets be49376660c1:404186cf740f
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/2)
> progress revision 1 'next' (0/1)
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark feature-a
> added 3 changesets with 3 changes to 1 files (+1 heads)
> new changesets be49376660c1:404186cf740f
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/2)
> progress revision 1 'next' (0/1)
> ok 4 - cloning with bookmarks
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg bookmark devel
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet devel &&
> 	echo devel > content &&
> 	git commit -a -m devel &&
> 	git push --quiet origin devel
> 	) &&
> 
> 	check_bookmark hgrepo devel devel
> 
> ok 4 - cloning with bookmarks
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg bookmark devel
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet devel &&
> 	echo devel > content &&
> 	git commit -a -m devel &&
> 	git push --quiet origin devel
> 	) &&
> 
> 	check_bookmark hgrepo devel devel
> 
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 5 changesets with 3 changes to 3 files
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark feature-a
> added 3 changesets with 3 changes to 1 files (+1 heads)
> new changesets be49376660c1:404186cf740f
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/2)
> progress revision 1 'next' (0/1)
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark feature-a
> added 3 changesets with 3 changes to 1 files (+1 heads)
> new changesets be49376660c1:404186cf740f
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/2)
> progress revision 1 'next' (0/1)
> [devel b95c73e] devel
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets a8327c164752
> [devel b95c73e] devel
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> adding changesets
> adding manifests
> adding file changes
> added 5 changesets with 3 changes to 3 files
> new changesets 362b656574c3:54f595cbdf1f
> progress revision walk 'bookmarks/master' (4/4)
> progress revision 0 'master' (0/5)
> no changes found
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> ok 3 - subcommand repo - with local proxy
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_repos &&
> 
> 	(
> 	cd gitrepo &&
> 	git rev-parse HEAD > rev-HEAD &&
> 	test -s rev-HEAD &&
> 	git-hg-helper hg-rev `cat rev-HEAD` > hg-HEAD &&
> 	git-hg-helper git-rev `cat hg-HEAD` > git-HEAD &&
> 	test_cmp rev-HEAD git-HEAD
> 	)
> 
> ok 5 - update bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet -b feature-b &&
> 	echo feature-b > content &&
> 	git commit -a -m feature-b &&
> 	git push --quiet origin feature-b
> 	) &&
> 
> 	check_bookmark hgrepo feature-b feature-b
> 
> Cloning into 'gitrepo'...
> ok 5 - update bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet -b feature-b &&
> 	echo feature-b > content &&
> 	git commit -a -m feature-b &&
> 	git push --quiet origin feature-b
> 	) &&
> 
> 	check_bookmark hgrepo feature-b feature-b
> 
> Cloning into 'gitrepo'...
> searching for changes
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 5 changesets with 3 changes to 3 files
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark feature-a
> added 4 changesets with 4 changes to 1 files (+1 heads)
> new changesets be49376660c1:28f86266e3c2
> progress revision walk 'bookmarks/master' (3/3)
> progress revision 0 'master' (0/3)
> adding changesets
> Cloning into 'gitrepo'...
> progress revision 1 'next' (0/1)
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark feature-a
> added 4 changesets with 4 changes to 1 files (+1 heads)
> new changesets be49376660c1:28f86266e3c2
> progress revision walk 'bookmarks/master' (3/3)
> progress revision 0 'master' (0/3)
> progress revision 1 'next' (0/1)
> [feature-b e60d301] feature-b
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> [feature-b e60d301] feature-b
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 0be3f4736e4d
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> ok 2 - file removal
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	(
> 	git init -q gitrepo &&
> 	cd gitrepo &&
> 	git config receive.denyCurrentBranch ignore &&
> 	echo alpha > alpha &&
> 	git add alpha &&
> 	git commit -m "add alpha" &&
> 	git tag alpha &&
> 
> 	echo beta > beta &&
> 	git add beta &&
> 	git commit -m "add beta" &&
> 	git tag -a -m "added tag beta" beta
> 	) &&
> 
> 	hg_clone gitrepo hgrepo &&
> 	git_clone hgrepo gitrepo2 &&
> 	hg_clone gitrepo2 hgrepo2 &&
> 
> 	hg_log hgrepo > expected &&
> 	hg_log hgrepo2 > actual &&
> 
> 	test_cmp expected actual
> 
> [master (root-commit) 223a6f6] add alpha
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 alpha
> [master 862befc] add beta
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 beta
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> ok 6 - new bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	touch content &&
> 	hg add content &&
> 
> 	> ../expected &&
> 	author_test alpha "" "H G Wells <wells@example.com>" &&
> 	author_test beta "beta" "beta <unknown>" &&
> 	author_test gamma "gamma <test@example.com> (comment)" "gamma <test@example.com>" &&
> 	author_test delta "<delta@example.com>" "Unknown <delta@example.com>" &&
> 	author_test epsilon "epsilon<test@example.com>" "epsilon <test@example.com>" &&
> 	author_test zeta "zeta <test@example.com" "zeta <test@example.com>" &&
> 	author_test eta " eta " "eta <unknown>" &&
> 	author_test theta "theta < test@example.com >" "theta <test@example.com>" &&
> 	author_test iota "iota >test@example.com>" "iota <test@example.com>" &&
> 	author_test kappa "kappa < test <at> example <dot> com>" "kappa <unknown>" &&
> 	author_test lambda "lambda@example.com" "Unknown <lambda@example.com>" &&
> 	author_test mu "mu.mu@example.com" "Unknown <mu.mu@example.com>"
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	git --git-dir=gitrepo/.git log --reverse --format="%an <%ae>" > actual &&
> 
> 	test_cmp expected actual
> 
> ok 6 - new bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	touch content &&
> 	hg add content &&
> 
> 	> ../expected &&
> 	author_test alpha "" "H G Wells <wells@example.com>" &&
> 	author_test beta "beta" "beta <unknown>" &&
> 	author_test gamma "gamma <test@example.com> (comment)" "gamma <test@example.com>" &&
> 	author_test delta "<delta@example.com>" "Unknown <delta@example.com>" &&
> 	author_test epsilon "epsilon<test@example.com>" "epsilon <test@example.com>" &&
> 	author_test zeta "zeta <test@example.com" "zeta <test@example.com>" &&
> 	author_test eta " eta " "eta <unknown>" &&
> 	author_test theta "theta < test@example.com >" "theta <test@example.com>" &&
> 	author_test iota "iota >test@example.com>" "iota <test@example.com>" &&
> 	author_test kappa "kappa < test <at> example <dot> com>" "kappa <unknown>" &&
> 	author_test lambda "lambda@example.com" "Unknown <lambda@example.com>" &&
> 	author_test mu "mu.mu@example.com" "Unknown <mu.mu@example.com>"
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	git --git-dir=gitrepo/.git log --reverse --format="%an <%ae>" > actual &&
> 
> 	test_cmp expected actual
> 
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> searching for changes
> searching for changes
> ok 4 - subcommands hg-rev and git-rev
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero
> 	echo one > content &&
> 	hg commit -m one &&
> 	echo two > content &&
> 	hg commit -m two &&
> 	echo three > content &&
> 	hg commit -m three
> 	) &&
> 
> 	git clone hg::hgrepo gitrepo &&
> 
> 	(
> 	cd hgrepo &&
> 	hg strip -r 1 &&
> 	echo four > content &&
> 	hg commit -m four
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git fetch origin &&
> 	git reset --hard origin/master &&
> 	git gc &&
> 	git-hg-helper gc --check-hg origin > output &&
> 	cat output &&
> 	grep "hg marks" output &&
> 	grep "git marks" output
> 	)
> 
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> new changesets 362b656574c3:7cd99375c843
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> searching for changes
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 4 changesets with 4 changes to 1 files
> new changesets ac1186815285:27519244991c
> progress revision walk 'bookmarks/master' (3/3)
> progress revision 0 'master' (0/4)
> ok 3 - git tags
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	(
> 	git init -q gitrepo &&
> 	cd gitrepo &&
> 
> 	echo alpha > alpha &&
> 	git add alpha &&
> 	git commit -q -m "add alpha" &&
> 	git checkout -q -b not-master
> 	) &&
> 
> 	(
> 	hg_clone gitrepo hgrepo &&
> 
> 	cd hgrepo &&
> 	hg -q co default &&
> 	hg mv alpha beta &&
> 	hg -q commit -m "rename alpha to beta" &&
> 	hg branch gamma | grep -v "permanent and global" &&
> 	hg -q commit -m "started branch gamma"
> 	) &&
> 
> 	hg_push hgrepo gitrepo &&
> 	hg_clone gitrepo hgrepo2 &&
> 
> 	: Back to the common revision &&
> 	(cd hgrepo && hg checkout default) &&
> 
> 	# fetch does not affect phase, but pushing now does
> 	hg_log hgrepo | grep -v phase > expected &&
> 	hg_log hgrepo2 | grep -v phase > actual &&
> 
> 	test_cmp expected actual
> 
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> saved backup bundle to /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/.hg/strip-backup/5f2b5b70133c-4813bb61-backup.hg
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> searching for changes
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> new changesets efea0249eab6
> progress revision 4 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo
>  + 82ed7bb...c0eda5f master           -> origin/master  (forced update)
>  + 82ed7bb...c0eda5f branches/default -> origin/branches/default  (forced update)
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> HEAD is now at c0eda5f four
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 12 changesets with 12 changes to 1 files
> new changesets d289bf87469b:2582b4ec0eaa
> adding changesets
> adding manifests
> adding file changes
> progress revision walk 'bookmarks/master' (11/11)
> progress revision 0 'master' (0/12)
> added 12 changesets with 12 changes to 1 files
> new changesets d289bf87469b:2582b4ec0eaa
> progress revision walk 'bookmarks/master' (11/11)
> progress revision 0 'master' (0/12)
> ok 7 - authors
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo one >> content &&
> 	hg add content &&
> 	hg commit -m one &&
> 
> 	echo two >> content &&
> 	hg commit -m two
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd hgrepo &&
> 	hg strip 1 &&
> 
> 	echo three >> content &&
> 	hg commit -m three &&
> 
> 	echo four >> content &&
> 	hg commit -m four
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git fetch &&
> 	git log --format="%s" origin/master > ../actual
> 	) &&
> 
> 	hg -R hgrepo log --template "{desc}\n" > expected &&
> 	test_cmp actual expected
> 
> Loading hg marks ...
> Loading git marks ...
> Performing garbage collection on git commits ...
> Computing marks intersection ...
> Including notes commits ...
> Trimmed hg marks from #5 down to #0
> Trimmed git marks from #12 down to #2
> Writing hg marks ...
> Writing git marks ...
> Loading hg marks ...
> Trimmed hg marks from #5 down to #0
> Writing hg marks ...
> Loading git marks ...
> Trimmed git marks from #12 down to #2
> Writing git marks ...
> ok 5 - subcommand gc
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_repos &&
> 
> 	(
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git fetch origin
> 	) &&
> 
> 	hg log -R hgrepo > expected &&
> 	# not inside gitrepo; test shared path handling
> 	GIT_DIR=gitrepo/.git git-hg-helper origin log > actual
> 
> 	test_cmp expected actual
> 
> ok 7 - authors
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo one >> content &&
> 	hg add content &&
> 	hg commit -m one &&
> 
> 	echo two >> content &&
> 	hg commit -m two
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd hgrepo &&
> 	hg strip 1 &&
> 
> 	echo three >> content &&
> 	hg commit -m three &&
> 
> 	echo four >> content &&
> 	hg commit -m four
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git fetch &&
> 	git log --format="%s" origin/master > ../actual
> 	) &&
> 
> 	hg -R hgrepo log --template "{desc}\n" > expected &&
> 	test_cmp actual expected
> 
> marked working directory as branch gamma
> Cloning into 'gitrepo'...
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> Cloning into 'gitrepo'...
> adding remote bookmark not-master
> added 2 changesets with 1 changes to 1 files
> new changesets 5889597089fe:3320583a8de0
> 1 local changesets published
> progress revision 1 'default' (0/1)
> progress revision 2 'gamma' (0/1)
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 3c5c9930e900
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files
> new changesets 83083f9d9b9a:77454074351d
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files
> new changesets 83083f9d9b9a:77454074351d
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> searching for changes
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 0 changes to 0 files
> searching for changes
> searching for changes
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> saved backup bundle to /<<PKGBUILDDIR>>/test/trash directory.main/hgrepo/.hg/strip-backup/77454074351d-d2529424-backup.hg
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> saved backup bundle to /<<PKGBUILDDIR>>/test/trash directory.main-push/hgrepo/.hg/strip-backup/77454074351d-d2529424-backup.hg
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets a10ff757fb47
> progress revision 1 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo
>    8d673bd..a6f39be  master           -> origin/master
>    8d673bd..a6f39be  branches/default -> origin/branches/default
> 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files (+1 heads)
> new changesets 31644536337b:f4972d6c8703
> progress revision 2 'default' (0/2)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main/hgrepo
>  + ef51947...a898b4d master           -> origin/master  (forced update)
>  + ef51947...a898b4d branches/default -> origin/branches/default  (forced update)
> searching for changes
> ok 4 - hg branch
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	(
> 	git init -q gitrepo &&
> 	cd gitrepo &&
> 
> 	echo alpha > alpha &&
> 	git add alpha &&
> 	git commit -m "add alpha" &&
> 	git checkout -q -b not-master
> 	) &&
> 
> 	(
> 	hg_clone gitrepo hgrepo &&
> 
> 	cd hgrepo &&
> 	hg co default &&
> 	hg tag alpha
> 	) &&
> 
> 	hg_push hgrepo gitrepo &&
> 	# pushing a fetched tag is a problem ...
> 	{ hg_clone gitrepo hgrepo2 || true ; } &&
> 
> 	# fetch does not affect phase, but pushing now does
> 	hg_log hgrepo | grep -v phase > expected &&
> 	hg_log hgrepo2 | grep -v phase > actual &&
> 
> 	test_cmp expected actual
> 
> adding changesets
> adding manifests
> adding file changes
> [master (root-commit) 223a6f6] add alpha
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 alpha
> added 2 changesets with 2 changes to 1 files (+1 heads)
> new changesets 31644536337b:f4972d6c8703
> progress revision 2 'default' (0/2)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/hgrepo
>  + ef51947...a898b4d master           -> origin/master  (forced update)
>  + ef51947...a898b4d branches/default -> origin/branches/default  (forced update)
> ok 6 - subcommand [some-repo]
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_repo hg hgrepo &&
> 	(
> 	cd hgrepo &&
> 	setup_repo hg sub_hg_a &&
> 	setup_repo hg sub_hg_b &&
> 	setup_repo git sub_git &&
> 	echo "sub_hg_a = sub_hg_a" > .hgsub &&
> 	echo "sub_hg_b = sub_hg_b" >> .hgsub &&
> 	echo "sub_git = [git]sub_git" >> .hgsub &&
> 	hg add .hgsub &&
> 	hg commit -m substate
> 	)
> 
> 	git clone hg::hgrepo gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	git-hg-helper sub update --force &&
> 	test -f content_hgrepo &&
> 	test -f sub_hg_a/content_sub_hg_a &&
> 	test -f sub_hg_b/content_sub_hg_b &&
> 	test -f sub_git/content_sub_git
> 	) &&
> 
> 	check gitrepo HEAD substate &&
> 	check gitrepo/sub_hg_a HEAD zero_sub_hg_a &&
> 	check gitrepo/sub_hg_b HEAD zero_sub_hg_b &&
> 	check gitrepo/sub_git HEAD zero_sub_git
> 
> ok 8 - strip
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	hg bookmark master &&
> 	echo one > content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	echo two > content &&
> 	git commit -a -m two &&
> 	git push
> 	) &&
> 
> 	check_branch hgrepo default two
> 
> ok 8 - strip
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	hg bookmark master &&
> 	echo one > content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	echo two > content &&
> 	git commit -a -m two &&
> 	git push
> 	) &&
> 
> 	check_branch hgrepo default two
> 
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> searching for changes
> 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> searching for changes
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark not-master
> added 1 changesets with 1 changes to 1 files
> new changesets 16869bbe54be
> 1 local changesets published
> progress revision 1 'default' (0/1)
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark master
> added 2 changesets with 2 changes to 1 files
> new changesets 969600ceb320:6315412611c5
> progress revision walk 'bookmarks/default' (1/1)
> progress revision 0 'default' (0/2)
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark master
> added 2 changesets with 2 changes to 1 files
> new changesets 969600ceb320:6315412611c5
> progress revision walk 'bookmarks/default' (1/1)
> progress revision 0 'default' (0/2)
> [default 74c47d2] two
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> [default 74c47d2] two
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_git/.git/
> [master (root-commit) e9a16bb] zero_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content_sub_git
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/hgrepo
>    9a5e91a..74c47d2  default -> default
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> searching for changes
> no changes found
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/hgrepo
>    fffffff..74c47d2  default -> default
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> searching for changes
> searching for changes
> To hg::../hgrepo2
>  * [new branch]      branches/default -> branches/default
>  * [new branch]      master -> master
>  * [new branch]      not-master -> not-master
>  ! [rejected]        alpha -> alpha (already exists)
> error: failed to push some refs to 'hg::../hgrepo2'
> hint: Updates were rejected because the tag already exists in the remote.
> ok 9 - remote push with master bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	hg init hgrepo &&
> 
> 	(
> 	git init gitrepo &&
> 	cd gitrepo &&
> 	git remote add origin "hg::../hgrepo" &&
> 	echo one > content &&
> 	git add content &&
> 	git commit -a -m one &&
> 	git push origin master
> 	) &&
> 
> 	hg -R hgrepo log > actual &&
> 	cat actual &&
> 	test_cmp expected actual &&
> 
> 	check_branch hgrepo default one
> 
> Cloning into 'gitrepo'...
> ok 9 - remote push with master bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	hg init hgrepo &&
> 
> 	(
> 	git init gitrepo &&
> 	cd gitrepo &&
> 	git remote add origin "hg::../hgrepo" &&
> 	echo one > content &&
> 	git add content &&
> 	git commit -a -m one &&
> 	git push origin master
> 	) &&
> 
> 	hg -R hgrepo log > actual &&
> 	cat actual &&
> 	test_cmp expected actual &&
> 
> 	check_branch hgrepo default one
> 
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.main/gitrepo/.git/
> [master (root-commit) 64caca5] one
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.main-push/gitrepo/.git/
> [master (root-commit) 64caca5] one
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content
> ok 5 - hg tags
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	(
> 	git init -q gitrepo &&
> 	cd gitrepo &&
> 
> 	echo alpha > alpha &&
> 	git add alpha &&
> 	git commit -m "add alpha" --date="2007-01-01 00:00:00 +0000" &&
> 
> 	echo beta > beta &&
> 	git add beta &&
> 	git commit -m "add beta" --date="2007-01-01 00:00:00 +0100" &&
> 
> 	echo gamma > gamma &&
> 	git add gamma &&
> 	git commit -m "add gamma" --date="2007-01-01 00:00:00 -0100" &&
> 
> 	echo delta > delta &&
> 	git add delta &&
> 	git commit -m "add delta" --date="2007-01-01 00:00:00 +0130" &&
> 
> 	echo epsilon > epsilon &&
> 	git add epsilon &&
> 	git commit -m "add epsilon" --date="2007-01-01 00:00:00 -0130"
> 	) &&
> 
> 	hg_clone gitrepo hgrepo &&
> 	git_clone hgrepo gitrepo2 &&
> 	hg_clone gitrepo2 hgrepo2 &&
> 
> 	hg_log hgrepo > expected &&
> 	hg_log hgrepo2 > actual &&
> 
> 	test_cmp expected actual
> 
> [master (root-commit) a663549] add alpha
>  Author: A U Thor <author@example.com>
>  Date: Mon Jan 1 00:00:00 2007 +0000
>  1 file changed, 1 insertion(+)
>  create mode 100644 alpha
> adding changesets
> adding manifests
> adding file changes
> [master ea3e397] add beta
>  Author: A U Thor <author@example.com>
>  Date: Mon Jan 1 00:00:00 2007 +0100
>  1 file changed, 1 insertion(+)
>  create mode 100644 beta
> [master d7a1343] add gamma
>  Author: A U Thor <author@example.com>
>  Date: Mon Jan 1 00:00:00 2007 -0100
>  1 file changed, 1 insertion(+)
>  create mode 100644 gamma
> added 2 changesets with 3 changes to 3 files
> new changesets b8a9468a5330:0f2d60358e3e
> [master 79cd3e4] add delta
>  Author: A U Thor <author@example.com>
>  Date: Mon Jan 1 00:00:00 2007 +0130
>  1 file changed, 1 insertion(+)
>  create mode 100644 delta
> [master f12dbdf] add epsilon
>  Author: A U Thor <author@example.com>
>  Date: Mon Jan 1 00:00:00 2007 -0130
>  1 file changed, 1 insertion(+)
>  create mode 100644 epsilon
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::../hgrepo
>  * [new branch]      master -> master
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::../hgrepo
>  * [new branch]      master -> master
> Cloning into './sub_hg_a'...
> changeset:   0:6e2126489d3d
> tag:         tip
> user:        A U Thor <author@example.com>
> date:        Mon Jan 01 00:00:00 2007 +0230
> summary:     one
> 
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 5 changesets with 5 changes to 5 files
> changeset:   0:6e2126489d3d
> tag:         tip
> user:        A U Thor <author@example.com>
> date:        Mon Jan 01 00:00:00 2007 +0230
> summary:     one
> 
> ok 10 - remote push from master branch
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo HEAD zero
> 
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets d01662b86384
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> ok 10 - remote push from master branch
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo HEAD zero
> 
> Cloning into './sub_hg_b'...
> adding changesets
> adding manifests
> adding file changes
> adding changesets
> adding manifests
> added 1 changesets with 1 changes to 1 files
> adding file changes
> new changesets 9f5d8a12935d
> added 5 changesets with 5 changes to 5 files
> new changesets 87c8f82b00d0:21e96c99dac4
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision walk 'bookmarks/master' (4/4)
> progress revision 0 'master' (0/5)
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> Cloning into './sub_git'...
> done.
> ok 7 - subcommand sub initial update (hg and git subrepos)
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_subrepos &&
> 
> 	git clone hg::hgrepo gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	git-hg-helper sub --recursive update --force &&
> 	test -f content_hgrepo &&
> 	test -f sub_hg_a/content_sub_hg_a &&
> 	test -f sub_hg_a/sub_hg_a_x/content_sub_hg_a_x &&
> 	test -f sub_hg_b/content_sub_hg_b &&
> 	test -f sub_hg_b/sub_git/content_sub_git
> 	) &&
> 
> 	check gitrepo HEAD substate &&
> 	check gitrepo/sub_hg_a HEAD substate_hg_a &&
> 	check gitrepo/sub_hg_b HEAD substate_hg_b &&
> 	check gitrepo/sub_hg_a/sub_hg_a_x HEAD zero_sub_hg_a_x &&
> 	check gitrepo/sub_hg_b/sub_git HEAD zero_sub_git
> 
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets da94774b616a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets da94774b616a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> ok 11 - remote cloning
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	mv gitrepo gitrepo2 &&
> 	cd gitrepo2 &&
> 	git fetch
> 	)
> 
> Cloning into 'gitrepo'...
> ok 11 - remote cloning
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	mv gitrepo gitrepo2 &&
> 	cd gitrepo2 &&
> 	git fetch
> 	)
> 
> Cloning into 'gitrepo'...
> searching for changes
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 5 changesets with 5 changes to 5 files
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets da94774b616a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets da94774b616a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> ok 6 - test timezones
> 
> # passed all 6 test(s)
> 1..6
> ok 12 - moving remote clone
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg bookmark devel
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet devel &&
> 	echo devel > content &&
> 	git commit -a -m devel &&
> 	git push --quiet
> 	) &&
> 
> 	check_bookmark hgrepo devel devel
> 
> no changes found
> ok 12 - moving remote clone
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg bookmark devel
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet devel &&
> 	echo devel > content &&
> 	git commit -a -m devel &&
> 	git push --quiet
> 	) &&
> 
> 	check_bookmark hgrepo devel devel
> 
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> added 1 changesets with 1 changes to 1 files
> new changesets da94774b616a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> added 1 changesets with 1 changes to 1 files
> new changesets da94774b616a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> [devel 2dbf0b6] devel
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> [devel 2dbf0b6] devel
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> ok 13 - remote update bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet -b feature-b &&
> 	echo feature-b > content &&
> 	git commit -a -m feature-b &&
> 	git push --quiet origin feature-b
> 	) &&
> 
> 	check_bookmark hgrepo feature-b feature-b
> 
> Cloning into 'gitrepo'...
> ok 13 - remote update bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet -b feature-b &&
> 	echo feature-b > content &&
> 	git commit -a -m feature-b &&
> 	git push --quiet origin feature-b
> 	) &&
> 
> 	check_bookmark hgrepo feature-b feature-b
> 
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_b/sub_git/.git/
> adding changesets
> adding manifests
> adding file changes
> [master (root-commit) e9a16bb] zero_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content_sub_git
> adding remote bookmark devel
> added 2 changesets with 2 changes to 1 files
> new changesets da94774b616a:0923871a226b
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> adding changesets
> adding manifests
> adding file changes
> [feature-b 3419828] feature-b
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> adding remote bookmark devel
> added 2 changesets with 2 changes to 1 files
> new changesets da94774b616a:0923871a226b
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> [feature-b 3419828] feature-b
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> ok 14 - remote new bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd hgrepo &&
> 	hg checkout default &&
> 	echo bump > content &&
> 	hg commit -m bump
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	echo diverge > content &&
> 	git commit -a -m diverged &&
> 	check_push 1 <<-\EOF
> 	master:non-fast-forward
> 	EOF
> 	) &&
> 
> 	check_branch hgrepo default bump
> 
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> ok 14 - remote new bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd hgrepo &&
> 	hg checkout default &&
> 	echo bump > content &&
> 	hg commit -m bump
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	echo diverge > content &&
> 	git commit -a -m diverged &&
> 	check_push 1 <<-\EOF
> 	master:non-fast-forward
> 	EOF
> 	) &&
> 
> 	check_branch hgrepo default bump
> 
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark feature-b
> added 3 changesets with 3 changes to 1 files
> new changesets da94774b616a:f62777554987
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/3)
> adding changesets
> adding manifests
> adding file changes
> adding changesets
> added 2 changesets with 3 changes to 3 files
> new changesets db8ac9770736:7e4cd3c231b2
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark feature-b
> added 3 changesets with 3 changes to 1 files
> new changesets da94774b616a:f62777554987
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/3)
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> (leaving bookmark devel)
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> (leaving bookmark devel)
> [master d425d05] diverged
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> Cloning into './sub_hg_a'...
> [master d425d05] diverged
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets e84496f3969d:305c5733a664
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets f09031867f0c
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/hgrepo
>  ! [rejected]        master -> master (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>  ! [rejected]        master -> master (non-fast-forward)
> Cloning into './sub_hg_a/sub_hg_a_x'...
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 307b0caa2d60
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/hgrepo
>  ! [rejected]        master -> master (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>  ! [rejected]        master -> master (non-fast-forward)
> ok 15 - remote push diverged
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg checkout tip^ &&
> 	hg bookmark diverge
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd hgrepo &&
> 	echo "bump bookmark" > content &&
> 	hg commit -m "bump bookmark"
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git checkout --quiet diverge &&
> 	echo diverge > content &&
> 	git commit -a -m diverge &&
> 	check_push 1 <<-\EOF
> 	diverge:non-fast-forward
> 	EOF
> 	) &&
> 
> 	check_bookmark hgrepo diverge "bump bookmark"
> 
> ok 15 - remote push diverged
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	cd hgrepo &&
> 	hg checkout tip^ &&
> 	hg bookmark diverge
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd hgrepo &&
> 	echo "bump bookmark" > content &&
> 	hg commit -m "bump bookmark"
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git checkout --quiet diverge &&
> 	echo diverge > content &&
> 	git commit -a -m diverge &&
> 	check_push 1 <<-\EOF
> 	diverge:non-fast-forward
> 	EOF
> 	) &&
> 
> 	check_bookmark hgrepo diverge "bump bookmark"
> 
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 7b3e568bd436
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> Cloning into 'gitrepo'...
> Cloning into './sub_hg_b'...
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark diverge
> adding remote bookmark feature-b
> added 4 changesets with 4 changes to 1 files
> new changesets da94774b616a:f09031867f0c
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets fe35db845c91:eba774f556bc
> progress revision walk 'bookmarks/master' (3/3)
> progress revision 0 'master' (0/4)
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark diverge
> adding remote bookmark feature-b
> added 4 changesets with 4 changes to 1 files
> new changesets da94774b616a:307b0caa2d60
> progress revision walk 'bookmarks/master' (3/3)
> progress revision 0 'master' (0/4)
> Cloning into './sub_hg_b/sub_git'...
> done.
> created new head
> ok 8 - subcommand sub initial recursive update
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	test_sub_update
> 
> [diverge 06e0ab3] diverge
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> created new head
> [diverge 06e0ab3] diverge
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> updating bookmark diverge
> added 1 changesets with 1 changes to 1 files (+1 heads)
> new changesets f04cbc1732dd
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/hgrepo
>  ! [rejected]        diverge -> diverge (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>  ! [rejected]        diverge -> diverge (non-fast-forward)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> updating bookmark diverge
> added 1 changesets with 1 changes to 1 files (+1 heads)
> new changesets f04cbc1732dd
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/hgrepo
>  ! [rejected]        diverge -> diverge (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>  ! [rejected]        diverge -> diverge (non-fast-forward)
> ok 16 - remote update bookmark diverge
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet -b feature-c HEAD^ &&
> 	echo feature-c > content &&
> 	git commit -a -m feature-c &&
> 	git push --quiet origin feature-c
> 	) &&
> 
> 	check_bookmark hgrepo feature-c feature-c
> 
> Cloning into 'gitrepo'...
> ok 16 - remote update bookmark diverge
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo*" &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git checkout --quiet -b feature-c HEAD^ &&
> 	echo feature-c > content &&
> 	git commit -a -m feature-c &&
> 	git push --quiet origin feature-c
> 	) &&
> 
> 	check_bookmark hgrepo feature-c feature-c
> 
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark diverge
> adding remote bookmark feature-b
> added 5 changesets with 5 changes to 1 files (+1 heads)
> new changesets da94774b616a:f04cbc1732dd
> WARNING: Branch 'default' has more than one head, consider merging
> progress revision walk 'bookmarks/master' (4/4)
> progress revision 0 'master' (0/4)
> [feature-c f2c87ff] feature-c
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark devel
> adding remote bookmark diverge
> adding remote bookmark feature-b
> added 5 changesets with 5 changes to 1 files (+1 heads)
> new changesets da94774b616a:f04cbc1732dd
> WARNING: Branch 'default' has more than one head, consider merging
> progress revision walk 'bookmarks/master' (4/4)
> progress revision 0 'master' (0/4)
> [feature-c f2c87ff] feature-c
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> ok 17 - remote new bookmark multiple branch head
> 
> checking known breakage: 
> 	test_when_finished "rm -rf gitrepo hgrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	cp content content-copy &&
> 	# recent git-fast-export is (too) picky in recognizing copies
> 	# although git-log is not as picky;
> 	# since https://github.com/git/git/commit/8096e1d385660c159d9d47e69b2be63cf22e4f31
> 	# a copy is only marked if source filed not modified as well
> 	# (though destination file can be modified)
> 	echo one >> content-copy &&
> 	git add content content-copy &&
> 	git commit -m copy &&
> 	git mv content-copy content-moved
> 	git commit -m moved &&
> 	git push origin master
> 	) &&
> 
> 	(
> 	hg -R hgrepo update &&
> 	test_cmp gitrepo/content hgrepo/content
> 	test_cmp gitrepo/content-moved hgrepo/content-moved
> 	cd hgrepo &&
> 	test `hg log -f content-moved | grep -c changeset` -eq 3
> 	)
> 
> ok 17 - remote new bookmark multiple branch head
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo hgrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	cp content content-copy &&
> 	# recent git-fast-export is (too) picky in recognizing copies
> 	# although git-log is not as picky;
> 	# since https://github.com/git/git/commit/8096e1d385660c159d9d47e69b2be63cf22e4f31
> 	# a copy is only marked if source filed not modified as well
> 	# (though destination file can be modified)
> 	echo one >> content-copy &&
> 	git add content content-copy &&
> 	git commit -m copy &&
> 	git mv content-copy content-moved
> 	git commit -m moved &&
> 	git push origin master
> 	) &&
> 
> 	(
> 	hg -R hgrepo update &&
> 	test_cmp gitrepo/content hgrepo/content
> 	test_cmp gitrepo/content-moved hgrepo/content-moved
> 	cd hgrepo &&
> 	test `hg log -f content-moved | grep -c changeset` -eq 3
> 	)
> 
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 0714aa136453
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_b/sub_git/.git/
> [master (root-commit) e9a16bb] zero_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content_sub_git
> [master 258f9c3] copy
>  Author: A U Thor <author@example.com>
>  1 file changed, 2 insertions(+)
>  create mode 100644 content-copy
> [master 1b7e948] moved
>  Author: A U Thor <author@example.com>
>  1 file changed, 0 insertions(+), 0 deletions(-)
>  rename content-copy => content-moved (100%)
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 0714aa136453
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> [master 258f9c3] copy
>  Author: A U Thor <author@example.com>
>  1 file changed, 2 insertions(+)
>  create mode 100644 content-copy
> [master 1b7e948] moved
>  Author: A U Thor <author@example.com>
>  1 file changed, 0 insertions(+), 0 deletions(-)
>  rename content-copy => content-moved (100%)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/hgrepo
>    8cb4b74..1b7e948  master -> master
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/hgrepo
>    fffffff..1b7e948  master -> master
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> Cloning into 'gitrepo'...
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> not ok 18 - push commits with copy and rename # TODO known breakage
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo && LC_ALL=C" &&
> 
> 	LC_ALL=C.UTF-8
> 	export LC_ALL
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo test >> "æ rø" &&
> 	hg add "æ rø" &&
> 	echo test >> "ø~?" &&
> 	hg add "ø~?" &&
> 	hg commit -m add-utf-8 &&
> 	echo test >> "æ rø" &&
> 	hg commit -m test-utf-8 &&
> 	hg rm "ø~?" &&
> 	hg mv "æ rø" "ø~?" &&
> 	hg commit -m hg-mv-utf-8
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git -c core.quotepath=false ls-files > ../actual
> 	) &&
> 	echo "ø~?" > expected &&
> 	test_cmp expected actual
> 
> ok 18 - push commits with copy and rename
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo && LC_ALL=C" &&
> 
> 	LC_ALL=C.UTF-8
> 	export LC_ALL
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo test >> "æ rø" &&
> 	hg add "æ rø" &&
> 	echo test >> "ø~?" &&
> 	hg add "ø~?" &&
> 	hg commit -m add-utf-8 &&
> 	echo test >> "æ rø" &&
> 	hg commit -m test-utf-8 &&
> 	hg rm "ø~?" &&
> 	hg mv "æ rø" "ø~?" &&
> 	hg commit -m hg-mv-utf-8
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git -c core.quotepath=false ls-files > ../actual
> 	) &&
> 	echo "ø~?" > expected &&
> 	test_cmp expected actual
> 
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 13a21447b044:9e5b72b2eaf6
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> warning: filename contains '?', which is reserved on Windows: 'ø~?'
> Cloning into './sub_hg_a'...
> warning: filename contains '?', which is reserved on Windows: 'ø~?'
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 0b3db097c163:8475d7dd6be6
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> Cloning into './sub_hg_a/sub_hg_a_x'...
> warning: filename contains '?', which is reserved on Windows: 'ø~?'
> Cloning into 'gitrepo'...
> warning: filename contains '?', which is reserved on Windows: 'ø~?'
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 64ec5da65d66
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> Cloning into './sub_hg_b'...
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 3 changesets with 4 changes to 2 files
> new changesets 4ac47476b868:26f2d03eea35
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/3)
> ok 19 - fetch special filenames
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo && LC_ALL=C" &&
> 
> 	mkdir -p tmp && cd tmp &&
> 
> 	LC_ALL=C.UTF-8
> 	export LC_ALL
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo one >> content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 
> 	echo test >> "æ rø" &&
> 	git add "æ rø" &&
> 	git commit -m utf-8 &&
> 
> 	git push
> 	) &&
> 
> 	(cd hgrepo &&
> 	hg update &&
> 	hg manifest > ../actual
> 	) &&
> 
> 	printf "content\næ rø\n" > expected &&
> 	test_cmp expected actual
> 
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 295f0556e770:5a3a1c5fb4ab
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> adding changesets
> adding manifests
> adding file changes
> added 3 changesets with 4 changes to 2 files
> new changesets 4ac47476b868:26f2d03eea35
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/3)
> ok 19 - fetch special filenames
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo && LC_ALL=C" &&
> 
> 	mkdir -p tmp && cd tmp &&
> 
> 	LC_ALL=C.UTF-8
> 	export LC_ALL
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo one >> content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 
> 	echo test >> "æ rø" &&
> 	git add "æ rø" &&
> 	git commit -m utf-8 &&
> 
> 	git push
> 	) &&
> 
> 	(cd hgrepo &&
> 	hg update &&
> 	hg manifest > ../actual
> 	) &&
> 
> 	printf "content\næ rø\n" > expected &&
> 	test_cmp expected actual
> 
> Cloning into './sub_hg_b/sub_git'...
> done.
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 41b63798c71a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> [master 1835c24] utf-8
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 "\303\246 r\303\270"
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 41b63798c71a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> [master 1835c24] utf-8
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 "\303\246 r\303\270"
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> searching for changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    2f936ee..1835c24  master -> master
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets b6018167d588
> progress revision 2 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo
>    ee5d844..970df77  master           -> origin/master
>    ee5d844..970df77  branches/default -> origin/branches/default
> Updating ee5d844..970df77
> Fast-forward
>  .hgsubstate | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> no changes found
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    fffffff..1835c24  master -> master
> ok 20 - push special filenames
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	setup_big_push
> 
> 	(
> 	cd gitrepo &&
> 
> 	check_push 1 --all <<-\EOF
> 	master
> 	good_bmark
> 	branches/good_branch
> 	new_bmark:new
> 	branches/new_branch:new
> 	bad_bmark1:non-fast-forward
> 	bad_bmark2:non-fast-forward
> 	branches/bad_branch:non-fast-forward
> 	EOF
> 	) &&
> 
> 	if test "$CAPABILITY_PUSH" = "t"
> 	then
> 		# cap push handles refs one by one
> 		# so it will push all requested it can
> 		check_branch hgrepo default six &&
> 		check_branch hgrepo good_branch eight &&
> 		check_branch hgrepo bad_branch "bad branch" &&
> 		check_branch hgrepo new_branch ten &&
> 		check_bookmark hgrepo good_bmark three &&
> 		check_bookmark hgrepo bad_bmark1 one &&
> 		check_bookmark hgrepo bad_bmark2 one &&
> 		check_bookmark hgrepo new_bmark six
> 	else
> 		check_branch hgrepo default one &&
> 		check_branch hgrepo good_branch "good branch" &&
> 		check_branch hgrepo bad_branch "bad branch" &&
> 		check_branch hgrepo new_branch &&
> 		check_bookmark hgrepo good_bmark one &&
> 		check_bookmark hgrepo bad_bmark1 one &&
> 		check_bookmark hgrepo bad_bmark2 one &&
> 		check_bookmark hgrepo new_bmark
> 	fi
> 
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> ok 20 - push special filenames
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	setup_big_push
> 
> 	(
> 	cd gitrepo &&
> 
> 	check_push 1 --all <<-\EOF
> 	master
> 	good_bmark
> 	branches/good_branch
> 	new_bmark:new
> 	branches/new_branch:new
> 	bad_bmark1:non-fast-forward
> 	bad_bmark2:non-fast-forward
> 	branches/bad_branch:non-fast-forward
> 	EOF
> 	) &&
> 
> 	if test "$CAPABILITY_PUSH" = "t"
> 	then
> 		# cap push handles refs one by one
> 		# so it will push all requested it can
> 		check_branch hgrepo default six &&
> 		check_branch hgrepo good_branch eight &&
> 		check_branch hgrepo bad_branch "bad branch" &&
> 		check_branch hgrepo new_branch ten &&
> 		check_bookmark hgrepo good_bmark three &&
> 		check_bookmark hgrepo bad_bmark1 one &&
> 		check_bookmark hgrepo bad_bmark2 one &&
> 		check_bookmark hgrepo new_bmark six
> 	else
> 		check_branch hgrepo default one &&
> 		check_branch hgrepo good_branch "good branch" &&
> 		check_branch hgrepo bad_branch "bad branch" &&
> 		check_branch hgrepo new_branch &&
> 		check_bookmark hgrepo good_bmark one &&
> 		check_bookmark hgrepo bad_bmark1 one &&
> 		check_bookmark hgrepo bad_bmark2 one &&
> 		check_bookmark hgrepo new_bmark
> 	fi
> 
> added 1 changesets with 1 changes to 1 files
> new changesets 1c2452a73994
> progress revision 2 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_a
>    5762808..6d07f00  branches/default -> origin/branches/default
>    5762808..6d07f00  master           -> origin/master
> HEAD is now at 5762808 substate_hg_a
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 7ea8b9e4a568
> progress revision 1 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_a/sub_hg_a_x
>    417e060..bb78149  branches/default -> origin/branches/default
>    417e060..bb78149  master           -> origin/master
> HEAD is now at 417e060 zero_sub_hg_a_x
> no changes found
> ok 9 - subcommand sub subsequent recursive update
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	test_sub_update --rebase
> 
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark1
> adding remote bookmark bad_bmark2
> adding remote bookmark good_bmark
> added 4 changesets with 4 changes to 1 files
> new changesets eae3952f9813:65a944a3bba6
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> progress revision 2 'bad_branch' (0/2)
> HEAD is now at 30602b9 zero
> HEAD is now at 30602b9 zero
> HEAD is now at 382f5ec good branch
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark1
> adding remote bookmark bad_bmark2
> adding remote bookmark good_bmark
> added 4 changesets with 4 changes to 1 files
> new changesets eae3952f9813:a326061453df
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> progress revision 2 'bad_branch' (0/2)
> HEAD is now at 30602b9 zero
> HEAD is now at 30602b9 zero
> HEAD is now at 731c9d7 good branch
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    382f5ec..fb913e4  branches/good_branch -> branches/good_branch
>    37db127..733fc45  good_bmark -> good_bmark
>    37db127..01d578d  master -> master
>  * [new branch]      branches/new_branch -> branches/new_branch
>  * [new branch]      new_bmark -> new_bmark
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
>  ! [rejected]        bad_bmark1 -> bad_bmark1 (non-fast-forward)
>  ! [rejected]        bad_bmark2 -> bad_bmark2 (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo'
> hint: Updates were rejected because a pushed branch tip is behind its remote
> hint: counterpart. Check out this branch and integrate the remote changes
> hint: (e.g. 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>    37db127..01d578d  master -> master
>    37db127..733fc45  good_bmark -> good_bmark
>    382f5ec..fb913e4  branches/good_branch -> branches/good_branch
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
>  ! [rejected]        bad_bmark1 -> bad_bmark1 (non-fast-forward)
>  ! [rejected]        bad_bmark2 -> bad_bmark2 (non-fast-forward)
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    fffffff..49f97b5  branches/good_branch -> branches/good_branch
>    fffffff..194bd94  good_bmark -> good_bmark
>    fffffff..38bd0b7  master -> master
>  * [new branch]      branches/new_branch -> branches/new_branch
>  * [new branch]      new_bmark -> new_bmark
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
>  ! [rejected]        bad_bmark1 -> bad_bmark1 (non-fast-forward)
>  ! [rejected]        bad_bmark2 -> bad_bmark2 (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo'
> hint: Updates were rejected because a pushed branch tip is behind its remote
> hint: counterpart. Check out this branch and integrate the remote changes
> hint: (e.g. 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>    fffffff..38bd0b7  master -> master
>    fffffff..194bd94  good_bmark -> good_bmark
>    fffffff..49f97b5  branches/good_branch -> branches/good_branch
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
>  ! [rejected]        bad_bmark1 -> bad_bmark1 (non-fast-forward)
>  ! [rejected]        bad_bmark2 -> bad_bmark2 (non-fast-forward)
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_b/sub_git/.git/
> [master (root-commit) e9a16bb] zero_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content_sub_git
> ok 21 - remote big push
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	hg bookmark bad_bmark &&
> 	hg bookmark good_bmark &&
> 	hg bookmark -i good_bmark &&
> 	hg -q branch good_branch &&
> 	echo "good branch" > content &&
> 	hg commit -m "good branch" &&
> 	hg -q branch bad_branch &&
> 	echo "bad branch" > content &&
> 	hg commit -m "bad branch"
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd hgrepo &&
> 	hg bookmark -f bad_bmark &&
> 	echo update_bmark > content &&
> 	hg commit -m "update bmark"
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	echo two > content &&
> 	git commit -q -a -m two &&
> 
> 	git checkout -q good_bmark &&
> 	echo three > content &&
> 	git commit -q -a -m three &&
> 
> 	git checkout -q bad_bmark &&
> 	echo four > content &&
> 	git commit -q -a -m four &&
> 
> 	git checkout -q branches/bad_branch &&
> 	echo five > content &&
> 	git commit -q -a -m five &&
> 
> 	check_push 1 --all <<-\EOF &&
> 	master
> 	good_bmark
> 	bad_bmark:non-fast-forward
> 	branches/bad_branch:non-fast-forward
> 	EOF
> 
> 	git fetch &&
> 
>         if test "$CAPABILITY_PUSH" = "t"
>         then
>                 # cap push handles refs one by one
> 		# so it will already have pushed some above previously
> 		# (and master is a fake one that jumps around a bit)
> 		check_push 1 --all <<-\EOF
> 		bad_bmark:non-fast-forward
> 		branches/bad_branch:non-fast-forward
> 		EOF
> 	else
> 		check_push 1 --all <<-\EOF
> 		master
> 		good_bmark
> 		bad_bmark:non-fast-forward
> 		branches/bad_branch:non-fast-forward
> 		EOF
> 	fi
> 	)
> 
> Cloning into 'gitrepo'...
> ok 21 - remote big push
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	hg bookmark bad_bmark &&
> 	hg bookmark good_bmark &&
> 	hg bookmark -i good_bmark &&
> 	hg -q branch good_branch &&
> 	echo "good branch" > content &&
> 	hg commit -m "good branch" &&
> 	hg -q branch bad_branch &&
> 	echo "bad branch" > content &&
> 	hg commit -m "bad branch"
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd hgrepo &&
> 	hg bookmark -f bad_bmark &&
> 	echo update_bmark > content &&
> 	hg commit -m "update bmark"
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	echo two > content &&
> 	git commit -q -a -m two &&
> 
> 	git checkout -q good_bmark &&
> 	echo three > content &&
> 	git commit -q -a -m three &&
> 
> 	git checkout -q bad_bmark &&
> 	echo four > content &&
> 	git commit -q -a -m four &&
> 
> 	git checkout -q branches/bad_branch &&
> 	echo five > content &&
> 	git commit -q -a -m five &&
> 
> 	check_push 1 --all <<-\EOF &&
> 	master
> 	good_bmark
> 	bad_bmark:non-fast-forward
> 	branches/bad_branch:non-fast-forward
> 	EOF
> 
> 	git fetch &&
> 
>         if test "$CAPABILITY_PUSH" = "t"
>         then
>                 # cap push handles refs one by one
> 		# so it will already have pushed some above previously
> 		# (and master is a fake one that jumps around a bit)
> 		check_push 1 --all <<-\EOF
> 		bad_bmark:non-fast-forward
> 		branches/bad_branch:non-fast-forward
> 		EOF
> 	else
> 		check_push 1 --all <<-\EOF
> 		master
> 		good_bmark
> 		bad_bmark:non-fast-forward
> 		branches/bad_branch:non-fast-forward
> 		EOF
> 	fi
> 	)
> 
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets effc65758fe4:d32d6e81ffa2
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> Cloning into './sub_hg_a'...
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 8b564b07b7a6:1b319a3286b1
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> Cloning into './sub_hg_a/sub_hg_a_x'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets c12a783dba65
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> Cloning into 'gitrepo'...
> Cloning into './sub_hg_b'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark
> adding remote bookmark good_bmark
> added 3 changesets with 3 changes to 1 files
> new changesets 18800c61a50c:daa242f51d8a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision 1 'bad_branch' (0/2)
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 8773d0017a14:da3f526e5daa
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> Cloning into 'gitrepo'...
> Cloning into './sub_hg_b/sub_git'...
> done.
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark
> adding remote bookmark good_bmark
> added 3 changesets with 3 changes to 1 files
> new changesets 9ad8c926b5b1:c4f94c7d6d90
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision 1 'bad_branch' (0/2)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> updating bookmark bad_bmark
> added 1 changesets with 1 changes to 1 files
> new changesets 00d1eae67fb0
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    2e65cbd..936db0c  good_bmark -> good_bmark
>    2e65cbd..55588fd  master -> master
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
>  ! [rejected]        bad_bmark -> bad_bmark (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>    2e65cbd..55588fd  master -> master
>    2e65cbd..936db0c  good_bmark -> good_bmark
>  ! [rejected]        bad_bmark -> bad_bmark (non-fast-forward)
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> searching for changes
> adding changesets
> adding manifests
> no changes found
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets f4325ffea318
> progress revision 2 'default' (0/1)
> progress revision 3 'bad_branch' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo
>    d8b17e2..f1fc1dc  master           -> origin/master
>    d8b17e2..f1fc1dc  branches/default -> origin/branches/default
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    0dea320..ad77d43  branches/bad_branch -> origin/branches/bad_branch
>    2e65cbd..ad77d43  bad_bmark           -> origin/bad_bmark
>  + 936db0c...2e65cbd good_bmark          -> origin/good_bmark  (forced update)
>  + 55588fd...2e65cbd master              -> origin/master  (forced update)
> Updating d8b17e2..f1fc1dc
> Fast-forward
>  .hgsubstate | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> updating bookmark bad_bmark
> added 1 changesets with 1 changes to 1 files
> new changesets 880bc2cbe383
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    fffffff..1e18701  good_bmark -> good_bmark
>    fffffff..9c41cdd  master -> master
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
>  ! [rejected]        bad_bmark -> bad_bmark (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>    fffffff..9c41cdd  master -> master
>    fffffff..1e18701  good_bmark -> good_bmark
>  ! [rejected]        bad_bmark -> bad_bmark (non-fast-forward)
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    2e65cbd..936db0c  good_bmark -> good_bmark
>    2e65cbd..55588fd  master -> master
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
>  ! [rejected]        bad_bmark -> bad_bmark (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>    2e65cbd..55588fd  master -> master
>    2e65cbd..936db0c  good_bmark -> good_bmark
>  ! [rejected]        bad_bmark -> bad_bmark (non-fast-forward)
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
> ok 22 - remote big push non fast forward
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	setup_big_push
> 
> 	(
> 	cd gitrepo &&
> 
> 	if test "$CAPABILITY_PUSH" = "t"
> 	then
> 		check_push 0 --force --all <<-\EOF
> 		master:forced-update
> 		good_bmark:forced-update
> 		branches/good_branch:forced-update
> 		new_bmark:new
> 		branches/new_branch:new
> 		bad_bmark1:forced-update
> 		bad_bmark2:forced-update
> 		branches/bad_branch:forced-update
> 		EOF
> 	else
> 		check_push 0 --force --all <<-\EOF
> 		master
> 		good_bmark
> 		branches/good_branch
> 		new_bmark:new
> 		branches/new_branch:new
> 		bad_bmark1:forced-update
> 		bad_bmark2:forced-update
> 		branches/bad_branch:forced-update
> 		EOF
> 	fi
> 	) &&
> 
> 	check_branch hgrepo default six &&
> 	check_branch hgrepo good_branch eight &&
> 	check_branch hgrepo bad_branch nine &&
> 	check_branch hgrepo new_branch ten &&
> 	check_bookmark hgrepo good_bmark three &&
> 	check_bookmark hgrepo bad_bmark1 four &&
> 	check_bookmark hgrepo bad_bmark2 five &&
> 	check_bookmark hgrepo new_bmark six
> 
> no changes found
> updating bookmark good_bmark
> 2 local changesets published
> WARNING: Branch 'default' has more than one head, consider merging
> progress revision 3 'bad_branch' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    1485bfb..14a736b  branches/bad_branch -> origin/branches/bad_branch
>    994b4da..9c41cdd  branches/default    -> origin/branches/default
>    994b4da..14a736b  bad_bmark           -> origin/bad_bmark
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 5fd28ec2d7a8
> progress revision 2 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_a
>    8c6b5d9..86f21fd  branches/default -> origin/branches/default
>    8c6b5d9..86f21fd  master           -> origin/master
> HEAD is now at 8c6b5d9 substate_hg_a
> 
>                                                                                 
> Successfully rebased and updated detached HEAD.
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
>  ! [rejected]        bad_bmark -> bad_bmark (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>  ! [rejected]        bad_bmark -> bad_bmark (non-fast-forward)
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
> ok 22 - remote big push non fast forward
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	setup_big_push
> 
> 	(
> 	cd gitrepo &&
> 
> 	if test "$CAPABILITY_PUSH" = "t"
> 	then
> 		check_push 0 --force --all <<-\EOF
> 		master:forced-update
> 		good_bmark:forced-update
> 		branches/good_branch:forced-update
> 		new_bmark:new
> 		branches/new_branch:new
> 		bad_bmark1:forced-update
> 		bad_bmark2:forced-update
> 		branches/bad_branch:forced-update
> 		EOF
> 	else
> 		check_push 0 --force --all <<-\EOF
> 		master
> 		good_bmark
> 		branches/good_branch
> 		new_bmark:new
> 		branches/new_branch:new
> 		bad_bmark1:forced-update
> 		bad_bmark2:forced-update
> 		branches/bad_branch:forced-update
> 		EOF
> 	fi
> 	) &&
> 
> 	check_branch hgrepo default six &&
> 	check_branch hgrepo good_branch eight &&
> 	check_branch hgrepo bad_branch nine &&
> 	check_branch hgrepo new_branch ten &&
> 	check_bookmark hgrepo good_bmark three &&
> 	check_bookmark hgrepo bad_bmark1 four &&
> 	check_bookmark hgrepo bad_bmark2 five &&
> 	check_bookmark hgrepo new_bmark six
> 
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 2cc6ac0eabd5
> progress revision 1 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_a/sub_hg_a_x
>    12aca16..9aabad9  branches/default -> origin/branches/default
>    12aca16..9aabad9  master           -> origin/master
> HEAD is now at 12aca16 zero_sub_hg_a_x
> 
>                                                                                 
> Successfully rebased and updated detached HEAD.
> no changes found
> ok 10 - subcommand sub subsequent recursive update -- rebase
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	test_sub_update --merge
> 
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark1
> adding remote bookmark bad_bmark2
> adding remote bookmark good_bmark
> added 4 changesets with 4 changes to 1 files
> new changesets 7c9ce2999f84:f8e530f40fff
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> progress revision 2 'bad_branch' (0/2)
> HEAD is now at 9d67db8 zero
> HEAD is now at 9d67db8 zero
> HEAD is now at b443280 good branch
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark1
> adding remote bookmark bad_bmark2
> adding remote bookmark good_bmark
> added 4 changesets with 4 changes to 1 files
> new changesets 237e8b20b551:149b70ea3543
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> progress revision 2 'bad_branch' (0/2)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 9 changesets with 9 changes to 1 files (+7 heads)
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  + 6592d09...f6e52c6 branches/bad_branch -> branches/bad_branch (forced update)
>    b443280..8cd71d9  branches/good_branch -> branches/good_branch
>  + e87bb6a...98f3f0a bad_bmark1 -> bad_bmark1 (forced update)
>  + e87bb6a...d5c36b4 bad_bmark2 -> bad_bmark2 (forced update)
>    e87bb6a..2ad1217  good_bmark -> good_bmark
>    e87bb6a..f0ef8be  master -> master
>  * [new branch]      branches/new_branch -> branches/new_branch
>  * [new branch]      new_bmark -> new_bmark
>    e87bb6a..f0ef8be  master -> master
>    e87bb6a..2ad1217  good_bmark -> good_bmark
>    b443280..8cd71d9  branches/good_branch -> branches/good_branch
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
>  + e87bb6a...98f3f0a bad_bmark1 -> bad_bmark1 (forced update)
>  + e87bb6a...d5c36b4 bad_bmark2 -> bad_bmark2 (forced update)
>  + 6592d09...f6e52c6 branches/bad_branch -> branches/bad_branch (forced update)
> HEAD is now at 0873daa zero
> HEAD is now at 0873daa zero
> HEAD is now at 47c7174 good branch
> --- expected	2022-02-18 20:40:43.783498545 +0000
> +++ actual	2022-02-18 20:40:43.903497844 +0000
> @@ -1 +1 @@
> -six
> +four
> not ok 23 - remote big push force
> #	
> #		test_when_finished "rm -rf hgrepo gitrepo*" &&
> #	
> #		setup_big_push
> #	
> #		(
> #		cd gitrepo &&
> #	
> #		if test "$CAPABILITY_PUSH" = "t"
> #		then
> #			check_push 0 --force --all <<-\EOF
> #			master:forced-update
> #			good_bmark:forced-update
> #			branches/good_branch:forced-update
> #			new_bmark:new
> #			branches/new_branch:new
> #			bad_bmark1:forced-update
> #			bad_bmark2:forced-update
> #			branches/bad_branch:forced-update
> #			EOF
> #		else
> #			check_push 0 --force --all <<-\EOF
> #			master
> #			good_bmark
> #			branches/good_branch
> #			new_bmark:new
> #			branches/new_branch:new
> #			bad_bmark1:forced-update
> #			bad_bmark2:forced-update
> #			branches/bad_branch:forced-update
> #			EOF
> #		fi
> #		) &&
> #	
> #		check_branch hgrepo default six &&
> #		check_branch hgrepo good_branch eight &&
> #		check_branch hgrepo bad_branch nine &&
> #		check_branch hgrepo new_branch ten &&
> #		check_bookmark hgrepo good_bmark three &&
> #		check_bookmark hgrepo bad_bmark1 four &&
> #		check_bookmark hgrepo bad_bmark2 five &&
> #		check_bookmark hgrepo new_bmark six
> #	
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	setup_big_push
> 
> 	(
> 	cd gitrepo &&
> 
> 	check_push 1 --dry-run --all <<-\EOF &&
> 	master
> 	good_bmark
> 	branches/good_branch
> 	new_bmark:new
> 	branches/new_branch:new
> 	bad_bmark1:non-fast-forward
> 	bad_bmark2:non-fast-forward
> 	branches/bad_branch:non-fast-forward
> 	EOF
> 
> 	check_push 0 --dry-run master good_bmark new_bmark branches/good_branch branches/new_branch <<-\EOF
> 	master
> 	good_bmark
> 	branches/good_branch
> 	new_bmark:new
> 	branches/new_branch:new
> 	EOF
> 	) &&
> 
> 	check_branch hgrepo default one &&
> 	check_branch hgrepo good_branch "good branch" &&
> 	check_branch hgrepo bad_branch "bad branch" &&
> 	check_branch hgrepo new_branch &&
> 	check_bookmark hgrepo good_bmark one &&
> 	check_bookmark hgrepo bad_bmark1 one &&
> 	check_bookmark hgrepo bad_bmark2 one &&
> 	check_bookmark hgrepo new_bmark
> 
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (+1 heads)
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  + fffffff...bc6a157 branches/bad_branch -> branches/bad_branch (forced update)
>  + fffffff...5fb033a branches/good_branch -> branches/good_branch (forced update)
>  + fffffff...55d6997 bad_bmark1 -> bad_bmark1 (forced update)
>  + fffffff...1c2440d bad_bmark2 -> bad_bmark2 (forced update)
>  + fffffff...41f1168 good_bmark -> good_bmark (forced update)
>  + fffffff...3a498b7 master -> master (forced update)
>  * [new branch]      branches/new_branch -> branches/new_branch
>  * [new branch]      new_bmark -> new_bmark
>  + fffffff...3a498b7 master -> master (forced update)
>  + fffffff...41f1168 good_bmark -> good_bmark (forced update)
>  + fffffff...5fb033a branches/good_branch -> branches/good_branch (forced update)
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
>  + fffffff...55d6997 bad_bmark1 -> bad_bmark1 (forced update)
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
>  + fffffff...1c2440d bad_bmark2 -> bad_bmark2 (forced update)
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_b/sub_git/.git/
>  + fffffff...bc6a157 branches/bad_branch -> branches/bad_branch (forced update)
> [master (root-commit) e9a16bb] zero_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content_sub_git
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets a2c9b0d45a96:930a79d1d60d
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> ok 23 - remote big push force
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	setup_big_push
> 
> 	(
> 	cd gitrepo &&
> 
> 	check_push 1 --dry-run --all <<-\EOF &&
> 	master
> 	good_bmark
> 	branches/good_branch
> 	new_bmark:new
> 	branches/new_branch:new
> 	bad_bmark1:non-fast-forward
> 	bad_bmark2:non-fast-forward
> 	branches/bad_branch:non-fast-forward
> 	EOF
> 
> 	check_push 0 --dry-run master good_bmark new_bmark branches/good_branch branches/new_branch <<-\EOF
> 	master
> 	good_bmark
> 	branches/good_branch
> 	new_bmark:new
> 	branches/new_branch:new
> 	EOF
> 	) &&
> 
> 	check_branch hgrepo default one &&
> 	check_branch hgrepo good_branch "good branch" &&
> 	check_branch hgrepo bad_branch "bad branch" &&
> 	check_branch hgrepo new_branch &&
> 	check_bookmark hgrepo good_bmark one &&
> 	check_bookmark hgrepo bad_bmark1 one &&
> 	check_bookmark hgrepo bad_bmark2 one &&
> 	check_bookmark hgrepo new_bmark
> 
> Cloning into './sub_hg_a'...
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 0d4e91f4409a:2602fae47c4a
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark1
> adding remote bookmark bad_bmark2
> adding remote bookmark good_bmark
> added 4 changesets with 4 changes to 1 files
> new changesets cad1ee277a95:e9a377d94d5c
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> progress revision 2 'bad_branch' (0/2)
> Cloning into './sub_hg_a/sub_hg_a_x'...
> HEAD is now at b44b434 zero
> HEAD is now at b44b434 zero
> HEAD is now at 2ab0fbb good branch
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 7e62cc38650b
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> Cloning into './sub_hg_b'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    2ab0fbb..2d84257  branches/good_branch -> branches/good_branch
>    fc4b3f9..4b14fa1  good_bmark -> good_bmark
>    fc4b3f9..847af42  master -> master
>  * [new branch]      branches/new_branch -> branches/new_branch
>  * [new branch]      new_bmark -> new_bmark
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
>  ! [rejected]        bad_bmark1 -> bad_bmark1 (non-fast-forward)
>  ! [rejected]        bad_bmark2 -> bad_bmark2 (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo'
> hint: Updates were rejected because a pushed branch tip is behind its remote
> hint: counterpart. Check out this branch and integrate the remote changes
> hint: (e.g. 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>    fc4b3f9..847af42  master -> master
>    fc4b3f9..4b14fa1  good_bmark -> good_bmark
>    2ab0fbb..2d84257  branches/good_branch -> branches/good_branch
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
>  ! [rejected]        bad_bmark1 -> bad_bmark1 (non-fast-forward)
>  ! [rejected]        bad_bmark2 -> bad_bmark2 (non-fast-forward)
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 11b749bf7ef7:1e5e424f83b4
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    2ab0fbb..2d84257  branches/good_branch -> branches/good_branch
>    fc4b3f9..4b14fa1  good_bmark -> good_bmark
>    fc4b3f9..847af42  master -> master
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
>    fc4b3f9..847af42  master -> master
>    fc4b3f9..4b14fa1  good_bmark -> good_bmark
>    2ab0fbb..2d84257  branches/good_branch -> branches/good_branch
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
> Cloning into './sub_hg_b/sub_git'...
> done.
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark1
> adding remote bookmark bad_bmark2
> adding remote bookmark good_bmark
> added 4 changesets with 4 changes to 1 files
> new changesets cb4e9123ad01:bf2a4911638a
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 5bff902068fd
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> progress revision 2 'bad_branch' (0/2)
> progress revision 2 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo
>    c00403f..590c3ef  master           -> origin/master
>    c00403f..590c3ef  branches/default -> origin/branches/default
> Updating c00403f..590c3ef
> Fast-forward
>  .hgsubstate | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> HEAD is now at 0835043 zero
> HEAD is now at 0835043 zero
> HEAD is now at 31eef51 good branch
> ok 24 - remote big push dry-run
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	setup_big_push
> 
> 	(
> 	cd gitrepo &&
> 
> 	if test "$CAPABILITY_PUSH" = "t"
> 	then
> 		check_push 0 --force --dry-run --all <<-\EOF
> 		master:forced-update
> 		good_bmark:forced-update
> 		branches/good_branch:forced-update
> 		new_bmark:new
> 		branches/new_branch:new
> 		bad_bmark1:forced-update
> 		bad_bmark2:forced-update
> 		branches/bad_branch:forced-update
> 		EOF
> 	else
> 		check_push 0 --force --dry-run --all <<-\EOF
> 		master
> 		good_bmark
> 		branches/good_branch
> 		new_bmark:new
> 		branches/new_branch:new
> 		bad_bmark1:forced-update
> 		bad_bmark2:forced-update
> 		branches/bad_branch:forced-update
> 		EOF
> 	fi
> 	) &&
> 
> 	check_branch hgrepo default one &&
> 	check_branch hgrepo good_branch "good branch" &&
> 	check_branch hgrepo bad_branch "bad branch" &&
> 	check_branch hgrepo new_branch &&
> 	check_bookmark hgrepo good_bmark one &&
> 	check_bookmark hgrepo bad_bmark1 one &&
> 	check_bookmark hgrepo bad_bmark2 one &&
> 	check_bookmark hgrepo new_bmark
> 
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    fffffff..4c38f0b  branches/good_branch -> branches/good_branch
>    fffffff..495460f  good_bmark -> good_bmark
>    fffffff..7c6cf9e  master -> master
>  * [new branch]      branches/new_branch -> branches/new_branch
>  * [new branch]      new_bmark -> new_bmark
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
>  ! [rejected]        bad_bmark1 -> bad_bmark1 (non-fast-forward)
>  ! [rejected]        bad_bmark2 -> bad_bmark2 (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo'
> hint: Updates were rejected because a pushed branch tip is behind its remote
> hint: counterpart. Check out this branch and integrate the remote changes
> hint: (e.g. 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
>    fffffff..7c6cf9e  master -> master
> searching for changes
>    fffffff..495460f  good_bmark -> good_bmark
>    fffffff..4c38f0b  branches/good_branch -> branches/good_branch
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
> adding changesets
>  ! [rejected]        bad_bmark1 -> bad_bmark1 (non-fast-forward)
> adding manifests
> adding file changes
>  ! [rejected]        bad_bmark2 -> bad_bmark2 (non-fast-forward)
>  ! [rejected]        branches/bad_branch -> branches/bad_branch (non-fast-forward)
> added 1 changesets with 1 changes to 1 files
> new changesets ee8cf6d9e340
> progress revision 2 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_a
>    e3a7368..3b0dff3  branches/default -> origin/branches/default
>    e3a7368..3b0dff3  master           -> origin/master
> HEAD is now at e3a7368 substate_hg_a
> Updating e3a7368..3b0dff3
> Fast-forward
>  .hgsubstate | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    fffffff..4c38f0b  branches/good_branch -> branches/good_branch
>    fffffff..495460f  good_bmark -> good_bmark
>    fffffff..7c6cf9e  master -> master
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
>    fffffff..7c6cf9e  master -> master
>    fffffff..495460f  good_bmark -> good_bmark
>    fffffff..4c38f0b  branches/good_branch -> branches/good_branch
> searching for changes
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets b0aa8054bd40
> progress revision 1 'default' (0/1)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_a/sub_hg_a_x
>    2394894..80c0b53  branches/default -> origin/branches/default
>    2394894..80c0b53  master           -> origin/master
> HEAD is now at 2394894 zero_sub_hg_a_x
> Updating 2394894..80c0b53
> Fast-forward
>  content_sub_hg_a_x | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> no changes found
> ok 11 - subcommand sub subsequent recursive update -- merge
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	test_sub_foreach
> 
> Cloning into 'gitrepo'...
> ok 24 - remote big push dry-run
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	setup_big_push
> 
> 	(
> 	cd gitrepo &&
> 
> 	if test "$CAPABILITY_PUSH" = "t"
> 	then
> 		check_push 0 --force --dry-run --all <<-\EOF
> 		master:forced-update
> 		good_bmark:forced-update
> 		branches/good_branch:forced-update
> 		new_bmark:new
> 		branches/new_branch:new
> 		bad_bmark1:forced-update
> 		bad_bmark2:forced-update
> 		branches/bad_branch:forced-update
> 		EOF
> 	else
> 		check_push 0 --force --dry-run --all <<-\EOF
> 		master
> 		good_bmark
> 		branches/good_branch
> 		new_bmark:new
> 		branches/new_branch:new
> 		bad_bmark1:forced-update
> 		bad_bmark2:forced-update
> 		branches/bad_branch:forced-update
> 		EOF
> 	fi
> 	) &&
> 
> 	check_branch hgrepo default one &&
> 	check_branch hgrepo good_branch "good branch" &&
> 	check_branch hgrepo bad_branch "bad branch" &&
> 	check_branch hgrepo new_branch &&
> 	check_bookmark hgrepo good_bmark one &&
> 	check_bookmark hgrepo bad_bmark1 one &&
> 	check_bookmark hgrepo bad_bmark2 one &&
> 	check_bookmark hgrepo new_bmark
> 
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark1
> adding remote bookmark bad_bmark2
> adding remote bookmark good_bmark
> added 4 changesets with 4 changes to 1 files
> new changesets c97042995938:3725b3042076
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> progress revision 2 'bad_branch' (0/2)
> HEAD is now at 94ef4dc zero
> HEAD is now at 94ef4dc zero
> HEAD is now at 9cfb182 good branch
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  + 86e46df...79b8274 branches/bad_branch -> branches/bad_branch (forced update)
>    9cfb182..38218a1  branches/good_branch -> branches/good_branch
>  + f3ccdaf...53ddd27 bad_bmark1 -> bad_bmark1 (forced update)
>  + f3ccdaf...4c545f0 bad_bmark2 -> bad_bmark2 (forced update)
>    f3ccdaf..2e25517  good_bmark -> good_bmark
>    f3ccdaf..ce6e5ec  master -> master
>  * [new branch]      branches/new_branch -> branches/new_branch
>  * [new branch]      new_bmark -> new_bmark
>    f3ccdaf..ce6e5ec  master -> master
>    f3ccdaf..2e25517  good_bmark -> good_bmark
>    9cfb182..38218a1  branches/good_branch -> branches/good_branch
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
>  + f3ccdaf...53ddd27 bad_bmark1 -> bad_bmark1 (forced update)
>  + f3ccdaf...4c545f0 bad_bmark2 -> bad_bmark2 (forced update)
>  + 86e46df...79b8274 branches/bad_branch -> branches/bad_branch (forced update)
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg_b/sub_git/.git/
> [master (root-commit) e9a16bb] zero_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content_sub_git
> Cloning into 'gitrepo'...
> ok 25 - remote big push force dry-run
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	echo one > content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git reset --hard HEAD^ &&
> 	echo two > content &&
> 	git commit -a -m two &&
> 	test_expect_code 1 git push &&
> 	test_expect_code 1 git push
> 	)
> 
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bad_bmark1
> adding remote bookmark bad_bmark2
> adding remote bookmark good_bmark
> added 4 changesets with 4 changes to 1 files
> new changesets c4475a88985a:733e7ec60923
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> progress revision 2 'bad_branch' (0/2)
> Cloning into 'gitrepo'...
> HEAD is now at 3b0104c zero
> HEAD is now at 3b0104c zero
> HEAD is now at 5df05b8 good branch
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets af4db04ed854:02236afbe49b
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> Cloning into 'gitrepo'...
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  + fffffff...743ce41 branches/bad_branch -> branches/bad_branch (forced update)
>  + fffffff...770e435 branches/good_branch -> branches/good_branch (forced update)
>  + fffffff...a71dbc9 bad_bmark1 -> bad_bmark1 (forced update)
>  + fffffff...69848b0 bad_bmark2 -> bad_bmark2 (forced update)
>  + fffffff...0a6478f good_bmark -> good_bmark (forced update)
>  + fffffff...3f7b1ba master -> master (forced update)
>  * [new branch]      branches/new_branch -> branches/new_branch
>  * [new branch]      new_bmark -> new_bmark
>  + fffffff...3f7b1ba master -> master (forced update)
>  + fffffff...0a6478f good_bmark -> good_bmark (forced update)
>  + fffffff...770e435 branches/good_branch -> branches/good_branch (forced update)
>  * [new branch]      new_bmark -> new_bmark
>  * [new branch]      branches/new_branch -> branches/new_branch
>  + fffffff...a71dbc9 bad_bmark1 -> bad_bmark1 (forced update)
>  + fffffff...69848b0 bad_bmark2 -> bad_bmark2 (forced update)
>  + fffffff...743ce41 branches/bad_branch -> branches/bad_branch (forced update)
> Cloning into './sub_hg_a'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files
> new changesets 0eab123d5004:43fe414b936e
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> HEAD is now at b7fc24f zero
> [master 9a9cae1] two
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 89fef1b7770c:a423f7c00958
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> Cloning into './sub_hg_a/sub_hg_a_x'...
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  ! [rejected]        master -> master (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 1d9e17912950
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  ! [rejected]        master -> master (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo'
> Cloning into './sub_hg_b'...
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
> ok 26 - remote double failed push
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo hgrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	echo feature-a > content &&
> 	hg commit -m feature-a
> 	hg bookmark feature-a
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo origin/feature-a feature-a &&
> 
> 	(
> 	cd hgrepo &&
> 	hg bookmark -d feature-a
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git fetch --prune origin
> 	git branch -a > out &&
> 	! grep feature-a out
> 	)
> 
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 436c3ad42eb8:85592591bc9f
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> ok 25 - remote big push force dry-run
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	echo one > content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git reset --hard HEAD^ &&
> 	echo two > content &&
> 	git commit -a -m two &&
> 	test_expect_code 1 git push &&
> 	test_expect_code 1 git push
> 	)
> 
> Cloning into './sub_hg_b/sub_git'...
> done.
> Cloning into 'gitrepo'...
> hg 961f886ef925312aecfc87bbce9780db03e0fd2d a423f7c009586b32e7a26d9142b7ad37fd6f7c37 sub_hg_a /<<PKGBUILDDIR>>/test/trash directory.helper/gitrepo
> hg b4a169ee366fdcb7478d45a9d2667694aa9dbf91 1d9e17912950ca25acf2e722e4887856fd12caf9 sub_hg_a_x /<<PKGBUILDDIR>>/test/trash directory.helper/gitrepo/sub_hg_a
> hg 4ca9b42ed34efe77a05c4f352115417184aabbb2 85592591bc9f4bc0c23474a2ae8760eb9cf31bbe sub_hg_b /<<PKGBUILDDIR>>/test/trash directory.helper/gitrepo
> git e9a16bb7c08361f85ab0002e4094b4229fefb384 e9a16bb7c08361f85ab0002e4094b4229fefb384 sub_git /<<PKGBUILDDIR>>/test/trash directory.helper/gitrepo/sub_hg_b
> ok 12 - subcommand sub foreach
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_repo hg hgrepo &&
> 	(
> 	cd hgrepo &&
> 	setup_repo hg sub_hg &&
> 	echo "sub_hg = sub_hg" > .hgsub &&
> 	hg add .hgsub &&
> 	hg commit -m substate
> 	)
> 
> 	git clone hg::hgrepo gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	git-hg-helper sub update --force &&
> 
> 		(
> 		cd sub_hg &&
> 		grep url .git/config > ../expected &&
> 		git config remote.origin.url foobar &&
> 		grep foobar .git/config
> 		) &&
> 
> 	git-hg-helper sub sync &&
> 	grep url sub_hg/.git/config > actual &&
> 	test_cmp expected actual
> 	)
> 
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark feature-a
> added 2 changesets with 2 changes to 1 files
> new changesets a0a123230683:4bbe527e498a
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files
> new changesets 8fe301e86edf:b466145f4f77
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> HEAD is now at abc6e68 zero
> [master 41d5b6c] two
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> error: refusing to update ref with bad name 'hg/origin/refs/bookmarks/feature-a'
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  - [deleted]         (none)     -> origin/feature-a
> no changes found
> ok 27 - fetch prune
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo hgrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	hg up -r null &&
> 	echo another > ocontent &&
> 	hg add ocontent &&
> 	hg commit -m one
> 	) &&
> 
> 	# -r 1 acts as master
> 	(
> 	git init --bare gitrepo && cd gitrepo &&
> 	git remote add origin hg::../hgrepo &&
> 	git fetch origin refs/heads/*:refs/heads/*
> 	) &&
> 
> 	(
> 	cd hgrepo &&
> 	hg up 0 &&
> 	echo two > content &&
> 	hg commit -m two
> 	) &&
> 
> 	# now master already exists
> 	# -r 2 becomes master head which has rev 0 as ancestor
> 	# so when importing (parentless) rev 0, a reset is needed
> 	# (to ensure rev 0 is not given a parent commit)
> 	(
> 	cd gitrepo &&
> 	git fetch origin &&
> 	git log --format="%s" origin/master > ../actual
> 	) &&
> 
> 	hg -R hgrepo log -r . -f --template "{desc}\n" > expected &&
> 	test_cmp actual expected
> 
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  ! [rejected]        master -> master (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  ! [rejected]        master -> master (non-fast-forward)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo'
> hint: Updates were rejected because the tip of your current branch is behind
> hint: its remote counterpart. Integrate the remote changes (e.g.
> hint: 'git pull ...') before pushing again.
> hint: See the 'Note about fast-forwards' in 'git push --help' for details.
> ok 26 - remote double failed push
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo hgrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	echo feature-a > content &&
> 	hg commit -m feature-a
> 	hg bookmark feature-a
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo origin/feature-a feature-a &&
> 
> 	(
> 	cd hgrepo &&
> 	hg bookmark -d feature-a
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git fetch --prune origin
> 	git branch -a > out &&
> 	! grep feature-a out
> 	)
> 
> Cloning into 'gitrepo'...
> 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 226a5b0f1ce5:e459a182f8c1
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> created new head
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.main/tmp/gitrepo/
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> Cloning into 'gitrepo'...
> Cloning into './sub_hg'...
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files (+1 heads)
> new changesets 206842ee0b6d:6dbc65ff076e
> WARNING: Branch 'default' has more than one head, consider merging
> WARNING: Branch 'default' has more than one head, consider merging
> progress revision 1 'default' (0/1)
> From hg::../hgrepo
>  * [new branch]      branches/default -> branches/default
>  * [new branch]      master           -> master
>  * [new branch]      branches/default -> origin/branches/default
>  * [new branch]      master           -> origin/master
> 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark feature-a
> added 2 changesets with 2 changes to 1 files
> new changesets 206842ee0b6d:722a8ec0037e
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 87a6743675a4
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> 	url = foobar
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 1d4b427a5399
> WARNING: Branch 'default' has more than one head, consider merging
> progress revision walk 'branches/default' (2/2)
> progress revision 0 'default' (0/2)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  + 3bc3264...fd0956a branches/default -> origin/branches/default  (forced update)
>  + 3bc3264...fd0956a master           -> origin/master  (forced update)
> no changes found
> error: refusing to update ref with bad name 'hg/origin/refs/bookmarks/feature-a'
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  - [deleted]         (none)     -> origin/feature-a
> ok 13 - subcommand sub sync
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_repo hg hgrepo &&
> 	(
> 	cd hgrepo &&
> 	setup_repo hg sub_hg &&
> 	setup_repo git sub_git &&
> 	echo "sub_hg = sub_hg" > .hgsub &&
> 	echo "sub_git = [git]sub_git" >> .hgsub &&
> 	hg add .hgsub &&
> 	hg commit -m substate
> 	)
> 
> 	git clone hg::hgrepo gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	git-hg-helper sub update --force &&
> 
> 		(
> 		cd sub_hg &&
> 		echo one > content_sub_hg &&
> 		git add content_sub_hg &&
> 		git commit -m one_sub_hg &&
> 		# detached HEAD
> 		git push origin HEAD:master &&
> 		# also fetch to ensure notes are updated
> 		git fetch origin
> 		) &&
> 
> 		(
> 		cd sub_git &&
> 		echo one > content_sub_git &&
> 		git add content_sub_git &&
> 		git commit -m one_sub_git &&
> 		# detached HEAD; push revision to other side ... anywhere
> 		git push origin HEAD:refs/heads/new
> 		)
> 	) &&
> 
> 	(
> 	cd gitrepo &&
> 	git-hg-helper sub upstate &&
> 	git diff &&
> 	git status --porcelain | grep .hgsubstate &&
> 	git add .hgsubstate &&
> 	git commit -m update_sub &&
> 	git push origin master
> 	) &&
> 
> 	hg clone hgrepo hgclone &&
> 
> 	(
> 	cd hgclone &&
> 	hg update
> 	) &&
> 
> 	check_branch hgclone default update_sub &&
> 	check_branch hgclone/sub_hg default one_sub_hg &&
> 	check hgclone/sub_git HEAD one_sub_git
> 
> ok 27 - fetch prune
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo hgrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero &&
> 	hg up -r null &&
> 	echo another > ocontent &&
> 	hg add ocontent &&
> 	hg commit -m one
> 	) &&
> 
> 	# -r 1 acts as master
> 	(
> 	git init --bare gitrepo && cd gitrepo &&
> 	git remote add origin hg::../hgrepo &&
> 	git fetch origin refs/heads/*:refs/heads/*
> 	) &&
> 
> 	(
> 	cd hgrepo &&
> 	hg up 0 &&
> 	echo two > content &&
> 	hg commit -m two
> 	) &&
> 
> 	# now master already exists
> 	# -r 2 becomes master head which has rev 0 as ancestor
> 	# so when importing (parentless) rev 0, a reset is needed
> 	# (to ensure rev 0 is not given a parent commit)
> 	(
> 	cd gitrepo &&
> 	git fetch origin &&
> 	git log --format="%s" origin/master > ../actual
> 	) &&
> 
> 	hg -R hgrepo log -r . -f --template "{desc}\n" > expected &&
> 	test_cmp actual expected
> 
> ok 28 - fetch multiple independent histories
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo a > a &&
> 	hg add a &&
> 	hg commit -m a &&
> 	hg bookmark -r null bookmark
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo HEAD a &&
> 	cd gitrepo &&
> 	git checkout --quiet -b bookmark &&
> 	git remote -v &&
> 	echo b > b &&
> 	git add b &&
> 	git commit -m b &&
> 	git push origin bookmark
> 	)
> 
> 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
> Cloning into 'gitrepo'...
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_git/.git/
> [master (root-commit) e9a16bb] zero_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content_sub_git
> created new head
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/gitrepo/
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bookmark
> added 1 changesets with 1 changes to 1 files
> new changesets 1c2279b4d17a
> WARNING: Ignoring invalid bookmark 'bookmark'
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> origin	hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo (fetch)
> origin	hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo (push)
> [bookmark 77646bf] b
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 b
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files (+1 heads)
> new changesets c420127a0a35:b2d3d71e6bce
> Cloning into 'gitrepo'...
> WARNING: Branch 'default' has more than one head, consider merging
> WARNING: Branch 'default' has more than one head, consider merging
> progress revision 1 'default' (0/1)
> From hg::../hgrepo
>  * [new branch]      branches/default -> branches/default
>  * [new branch]      master           -> master
>  * [new branch]      branches/default -> origin/branches/default
>  * [new branch]      master           -> origin/master
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> WARNING: Ignoring invalid bookmark 'bookmark'
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  * [new branch]      bookmark -> bookmark
> 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
> ok 29 - clone remote with null bookmark, then push
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one &&
> 	echo two > content &&
> 	hg commit -m two
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	hg -R hgrepo log --template "{node}\n\n" > expected &&
> 	git --git-dir=gitrepo/.git log --pretty="tformat:%N" --notes=hg > actual &&
> 	test_cmp expected actual
> 
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 9652f140995f:ae25227efe09
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> Cloning into './sub_hg'...
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets e138ec4d5f48
> WARNING: Branch 'default' has more than one head, consider merging
> progress revision walk 'branches/default' (2/2)
> progress revision 0 'default' (0/2)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  + 4bcb31b...92dc8e3 branches/default -> origin/branches/default  (forced update)
>  + 4bcb31b...92dc8e3 master           -> origin/master  (forced update)
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets ca2a7900fef7
> ok 28 - fetch multiple independent histories
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo a > a &&
> 	hg add a &&
> 	hg commit -m a &&
> 	hg bookmark -r null bookmark
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	check gitrepo HEAD a &&
> 	cd gitrepo &&
> 	git checkout --quiet -b bookmark &&
> 	git remote -v &&
> 	echo b > b &&
> 	git add b &&
> 	git commit -m b &&
> 	git push origin bookmark
> 	)
> 
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> Cloning into './sub_git'...
> done.
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> [detached HEAD e6f8253] one_sub_hg
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files
> new changesets e5f3b3d1542d:32bce11b8d0c
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> ok 30 - notes
> 
> checking known breakage: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	echo two > content &&
> 	git commit -a -m two &&
> 	git push
> 	) &&
> 
> 	hg -R hgrepo log --template "{node}\n\n" > expected &&
> 	git --git-dir=gitrepo/.git log --pretty="tformat:%N" --notes=hg > actual &&
> 	test_cmp expected actual
> 
> To hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg
>    fffffff..e6f8253  HEAD -> master
> Cloning into 'gitrepo'...
> no changes found
> 1 local changesets published
> From hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg
>    d4ac8a6..e6f8253  branches/default -> origin/branches/default
> [detached HEAD cea1af1] one_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> To /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_git
>  * [new branch]      HEAD -> new
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark bookmark
> added 1 changesets with 1 changes to 1 files
> new changesets 542a87136008
> WARNING: Ignoring invalid bookmark 'bookmark'
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> Cloning into 'gitrepo'...
> origin	hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo (fetch)
> origin	hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo (push)
> [bookmark 8006277] b
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 b
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> Updating ./sub_hg to 9eac49b268c6bf32a18b8804b12c2097f2c0f7f2 [git e6f8253]
> Updating ./sub_git to cea1af1c0bdaae94623e5a8e4d85c13835bb44b6 [git cea1af1]
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets c114161061e4
> diff --git a/.hgsubstate b/.hgsubstate
> index 3b796bb..14800b8 100644
> --- a/.hgsubstate
> +++ b/.hgsubstate
> @@ -1,2 +1,2 @@
> -e9a16bb7c08361f85ab0002e4094b4229fefb384 sub_git
> -ca2a7900fef76fe5077890d2499a537d178c46df sub_hg
> +cea1af1c0bdaae94623e5a8e4d85c13835bb44b6 sub_git
> +9eac49b268c6bf32a18b8804b12c2097f2c0f7f2 sub_hg
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
>  M .hgsubstate
> [master fc624b7] update_sub
>  Author: A U Thor <author@example.com>
>  1 file changed, 2 insertions(+), 2 deletions(-)
> no changes found
> WARNING: Ignoring invalid bookmark 'bookmark'
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> [master 1c20d32] two
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  * [new branch]      bookmark -> bookmark
> ok 29 - clone remote with null bookmark, then push
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one &&
> 	echo two > content &&
> 	hg commit -m two
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	hg -R hgrepo log --template "{node}\n\n" > expected &&
> 	git --git-dir=gitrepo/.git log --pretty="tformat:%N" --notes=hg > actual &&
> 	test_cmp expected actual
> 
> no changes found
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo
>    fffffff..fc624b7  master -> master
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    506019b..1c20d32  master -> master
> Cloning into '/<<PKGBUILDDIR>>/test/trash directory.helper/hgclone/sub_git'...
> done.
> Switched to a new branch 'new'
> --- expected	2022-02-18 20:40:58.831410688 +0000
> +++ actual	2022-02-18 20:40:58.851410571 +0000
> @@ -1,4 +1,3 @@
> -7d3eb51028f0bdca1ed8c7c10a65b7905507f865
>  
>  c114161061e4c193b2257f4bc5aa3547efd8bf68
>  
> not ok 31 - push updates notes # TODO known breakage
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	echo two > content &&
> 	git commit -a -m two &&
> 	git push origin master &&
> 	git branch feature-a &&
> 	git push origin feature-a
> 	) &&
> 
> 	check_bookmark hgrepo feature-a two
> 
> updating to branch default
> cloning subrepo sub_git from /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_git
> cloning subrepo sub_hg from /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_hg
> 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
> Cloning into 'gitrepo'...
> 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files
> new changesets c114161061e4:c09ec4028229
> Cloning into 'gitrepo'...
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> ok 14 - subcommand sub addstate
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_repo hg hgrepo &&
> 	(
> 	cd hgrepo &&
> 	setup_repo hg sub_hg_a &&
> 	setup_repo hg sub_hg_b &&
> 	setup_repo git sub_git &&
> 	echo "sub_hg_a = sub_hg_a" > .hgsub &&
> 	echo "sub_hg_b = sub_hg_b" >> .hgsub &&
> 	echo "sub_git = [git]sub_git" >> .hgsub &&
> 	hg add .hgsub &&
> 	hg commit -m substate
> 	)
> 
> 	git clone hg::hgrepo gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	git-hg-helper sub update --force sub_hg_a  &&
> 	git-hg-helper sub update --force sub_git &&
> 		(
> 		# advance and add a tag to the git repo
> 		cd sub_git &&
> 		echo one > content_sub_git &&
> 		git add content_sub_git &&
> 		git commit -m one_sub_git &&
> 		git tag feature-a
> 		) &&
> 
> 	git-hg-helper sub status --cached > output &&
> 	cat output &&
> 	grep "^ .*sub_hg_a (.*master.*)$" output &&
> 	grep "^-.*sub_hg_b$" output &&
> 	grep "^+.*sub_git (feature-a~1)$" output &&
> 	git-hg-helper sub status sub_git > output &&
> 	cat output &&
> 	grep "^+.*sub_git (feature-a)$" output > actual &&
> 	test_cmp output actual
> 	)
> 
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> ok 30 - notes
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	echo two > content &&
> 	git commit -a -m two &&
> 	git push
> 	) &&
> 
> 	hg -R hgrepo log --template "{node}\n\n" > expected &&
> 	git --git-dir=gitrepo/.git log --pretty="tformat:%N" --notes=hg > actual &&
> 	test_cmp expected actual
> 
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 352e8838ab89
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> [master d6df3f1] two
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    a2db847..d6df3f1  master -> master
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> 1 local changesets published
> searching for changes
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  * [new branch]      feature-a -> feature-a
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 352e8838ab89
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> [master d6df3f1] two
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> ok 32 - push bookmark without changesets
> 
> main.t: 1096: test_expect_unstable: not found
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one &&
> 	hg branch feature &&
> 	echo two > content &&
> 	hg commit -m two &&
> 	hg update default &&
> 	echo three > content &&
> 	hg commit -m three
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git merge -m Merge -Xtheirs origin/branches/feature &&
> 	git push
> 	) &&
> 
> 	cat > expected <<-EOF &&
> 	Merge
> 	three
> 	two
> 	one
> 	EOF
> 	hg -R hgrepo log --template "{desc}\n" > actual &&
> 	test_cmp expected actual
> 
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    fffffff..d6df3f1  master -> master
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.helper/hgrepo/sub_git/.git/
> [master (root-commit) e9a16bb] zero_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100644 content_sub_git
> ok 31 - push updates notes
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	echo two > content &&
> 	git commit -a -m two &&
> 	git push origin master &&
> 	git branch feature-a &&
> 	git push origin feature-a
> 	) &&
> 
> 	check_bookmark hgrepo feature-a two
> 
> marked working directory as branch feature
> (branches are permanent and global, did you want a bookmark?)
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 3 changes to 3 files
> new changesets 8b64088dcab4:6dcaaf5afe23
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets cac73f8dbe91
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> [master 3ac2ce2] two
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> Cloning into './sub_hg_a'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 3 changesets with 3 changes to 1 files (+1 heads)
> new changesets cac73f8dbe91:fb26ec2d81eb
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/2)
> progress revision 1 'feature' (0/1)
> Auto-merging content
> Merge made by the 'ort' strategy.
>  content | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    fffffff..3ac2ce2  master -> master
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets e3d5c2834e84
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (-1 heads)
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>    fcc25f9..3baaff8  master -> master
> no changes found
> 1 local changesets published
> searching for changes
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  * [new branch]      feature-a -> feature-a
> ok 33 - push merged named branch
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git tag v1.0 &&
> 	git push --tags
> 	) &&
> 
> 	echo "C O Mitter <committer@example.com>" > expected &&
> 	hg -R hgrepo log --template "{author}\n" -r tip > actual &&
> 	test_cmp expected actual
> 
> Cloning into './sub_git'...
> done.
> [detached HEAD cea1af1] one_sub_git
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> ok 32 - push bookmark without changesets
> 
> main-push.t: 1096: /<<PKGBUILDDIR>>/test/main.t: test_expect_unstable: not found
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one &&
> 	hg branch feature &&
> 	echo two > content &&
> 	hg commit -m two &&
> 	hg update default &&
> 	echo three > content &&
> 	hg commit -m three
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git merge -m Merge -Xtheirs origin/branches/feature &&
> 	git push
> 	) &&
> 
> 	cat > expected <<-EOF &&
> 	Merge
> 	three
> 	two
> 	one
> 	EOF
> 	hg -R hgrepo log --template "{desc}\n" > actual &&
> 	test_cmp expected actual
> 
> Cloning into 'gitrepo'...
>  e61485199b33e6181dec322537359dd02872e0d6 ./sub_hg_a (heads/master)
> -60f7b065f26ae425d6df5ad8247b8592ab307564[hg]  ./sub_hg_b
> +e9a16bb7c08361f85ab0002e4094b4229fefb384 ./sub_git (feature-a~1)
>  e61485199b33e6181dec322537359dd02872e0d6 ./sub_hg_a (heads/master)
> -60f7b065f26ae425d6df5ad8247b8592ab307564[hg]  ./sub_hg_b
> +e9a16bb7c08361f85ab0002e4094b4229fefb384 ./sub_git (feature-a~1)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> marked working directory as branch feature
> (branches are permanent and global, did you want a bookmark?)
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets eabc9f3d4462
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> +cea1af1c0bdaae94623e5a8e4d85c13835bb44b6 ./sub_git (feature-a)
> ok 15 - subcommand sub status
> 
> # passed all 15 test(s)
> 1..15
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  * [new tag]         v1.0 -> v1.0
> Cloning into 'gitrepo'...
> ok 34 - light tag sets author
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one &&
> 	hg branch feature &&
> 	echo two > content &&
> 	hg commit -m two
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git branch &&
> 	git checkout branches/feature &&
> 	git tag v1.0 &&
> 	git push --tags
> 	) &&
> 
> 	echo feature > expected &&
> 	hg -R hgrepo log --template="{branch}\n" -r tip > actual &&
> 	test_cmp expected actual
> 
> adding changesets
> adding manifests
> adding file changes
> added 3 changesets with 3 changes to 1 files (+1 heads)
> new changesets eabc9f3d4462:801bf9976d22
> progress revision walk 'bookmarks/master' (2/2)
> progress revision 0 'master' (0/2)
> progress revision 1 'feature' (0/1)
> Auto-merging content
> Merge made by the 'ort' strategy.
>  content | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files (-1 heads)
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    fffffff..99da286  master -> master
> marked working directory as branch feature
> (branches are permanent and global, did you want a bookmark?)
> Cloning into 'gitrepo'...
> ok 33 - push merged named branch
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git tag v1.0 &&
> 	git push --tags
> 	) &&
> 
> 	echo "C O Mitter <committer@example.com>" > expected &&
> 	hg -R hgrepo log --template "{author}\n" -r tip > actual &&
> 	test_cmp expected actual
> 
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files
> new changesets fbafc92c7caf:9022d0a78937
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision 1 'feature' (0/1)
> * master
> Switched to a new branch 'branches/feature'
> branch 'branches/feature' set up to track 'origin/branches/feature'.
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  * [new tag]         v1.0 -> v1.0
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets f05ed8370407
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> ok 35 - push tag different branch
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo test > test_file &&
> 	hg add test_file &&
> 	hg commit -m add &&
> 
> 	hg rm test_file &&
> 	hg commit -m remove
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check_files gitrepo
> 
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  * [new tag]         v1.0 -> v1.0
> ok 34 - light tag sets author
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one &&
> 	hg branch feature &&
> 	echo two > content &&
> 	hg commit -m two
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git branch &&
> 	git checkout branches/feature &&
> 	git tag v1.0 &&
> 	git push --tags
> 	) &&
> 
> 	echo feature > expected &&
> 	hg -R hgrepo log --template="{branch}\n" -r tip > actual &&
> 	test_cmp expected actual
> 
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> marked working directory as branch feature
> (branches are permanent and global, did you want a bookmark?)
> added 2 changesets with 1 changes to 1 files
> new changesets 5a74ba9b23be:be9ea4427133
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> ok 36 - cloning a removed file works
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo test > dir_or_file &&
> 	hg add dir_or_file &&
> 	hg commit -m add &&
> 
> 	hg rm dir_or_file &&
> 	mkdir dir_or_file &&
> 	echo test > dir_or_file/test_file &&
> 	hg add dir_or_file/test_file &&
> 	hg commit -m replase
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check_files gitrepo "dir_or_file/test_file"
> 
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 1 files
> new changesets beb599c076ca:72bb26e221a6
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision 1 'feature' (0/1)
> * master
> Switched to a new branch 'branches/feature'
> branch 'branches/feature' set up to track 'origin/branches/feature'.
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  * [new tag]         v1.0 -> v1.0
> Cloning into 'gitrepo'...
> ok 35 - push tag different branch
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo test > test_file &&
> 	hg add test_file &&
> 	hg commit -m add &&
> 
> 	hg rm test_file &&
> 	hg commit -m remove
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check_files gitrepo
> 
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> new changesets ca9958de6e6a:0e44ebd4d171
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> ok 37 - cloning a file replaced with a directory
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	mkdir dir_or_file &&
> 	echo test > dir_or_file/test_file &&
> 	hg add dir_or_file/test_file &&
> 	hg commit -m add &&
> 
> 	hg rm dir_or_file/test_file &&
> 	echo test > dir_or_file &&
> 	hg add dir_or_file &&
> 	hg commit -m add &&
> 
> 	hg rm dir_or_file
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check_files gitrepo "dir_or_file"
> 
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 1 changes to 1 files
> new changesets f8cccb4408ff:caa050ba446f
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> ok 36 - cloning a removed file works
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	echo test > dir_or_file &&
> 	hg add dir_or_file &&
> 	hg commit -m add &&
> 
> 	hg rm dir_or_file &&
> 	mkdir dir_or_file &&
> 	echo test > dir_or_file/test_file &&
> 	hg add dir_or_file/test_file &&
> 	hg commit -m replase
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check_files gitrepo "dir_or_file/test_file"
> 
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> new changesets a78ff7bd3db9:b5247cb41ee6
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> ok 38 - clone replace directory with a file
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	touch test.txt &&
> 	hg add test.txt &&
> 	hg commit -m master &&
> 	hg branch parent &&
> 	echo test >test.txt &&
> 	hg commit -m test &&
> 	hg branch parent/child &&
> 	echo test1 >test.txt &&
> 	hg commit -m test1
> 	) &&
> 
> 	git clone -c remote-hg.ignore-name=child "hg::hgrepo" gitrepo &&
> 	check_files gitrepo "test.txt"
> 
> Cloning into 'gitrepo'...
> marked working directory as branch parent
> (branches are permanent and global, did you want a bookmark?)
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> new changesets afe355f78563:1a5f94421cea
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> ok 37 - cloning a file replaced with a directory
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	mkdir dir_or_file &&
> 	echo test > dir_or_file/test_file &&
> 	hg add dir_or_file/test_file &&
> 	hg commit -m add &&
> 
> 	hg rm dir_or_file/test_file &&
> 	echo test > dir_or_file &&
> 	hg add dir_or_file &&
> 	hg commit -m add &&
> 
> 	hg rm dir_or_file
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check_files gitrepo "dir_or_file"
> 
> marked working directory as branch parent/child
> Cloning into 'gitrepo'...
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 3 changesets with 3 changes to 1 files
> new changesets 5f37bd96e29b:fbfa9fcc39bf
> WARNING: Ignoring matched branch parent/child
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision 1 'parent' (0/1)
> ok 39 - clone can ignore invalid refnames
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git tag -m "Version 1.0" v1.0 &&
> 	git push --tags
> 	) &&
> 
> 	cat > expected <<-\EOF &&
> 	tip:Version 1.0:C O Mitter <committer@example.com>
> 	v1.0:one:H G Wells <wells@example.com>
> 	EOF
> 
> 	hg -R hgrepo log --template "{tags}:{desc}:{author}\n" > actual &&
> 
> 	test_cmp expected actual
> 
> Cloning into 'gitrepo'...
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> new changesets 4e66813c5c25:ee51a0f0439b
> progress revision walk 'bookmarks/master' (1/1)
> progress revision 0 'master' (0/2)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> ok 38 - clone replace directory with a file
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 
> 	touch test.txt &&
> 	hg add test.txt &&
> 	hg commit -m master &&
> 	hg branch parent &&
> 	echo test >test.txt &&
> 	hg commit -m test &&
> 	hg branch parent/child &&
> 	echo test1 >test.txt &&
> 	hg commit -m test1
> 	) &&
> 
> 	git clone -c remote-hg.ignore-name=child "hg::hgrepo" gitrepo &&
> 	check_files gitrepo "test.txt"
> 
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 103edb0ae1d0
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  * [new tag]         v1.0 -> v1.0
> marked working directory as branch parent
> (branches are permanent and global, did you want a bookmark?)
> ok 40 - push annotated tag
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo1 gitrepo2" &&
> 
> 	hg init hgrepo &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo1 &&
> 	cd gitrepo1 &&
> 	echo two >> content &&
> 	git add content &&
> 	git commit -m two --date="2016-09-26 00:00:00 -0230" &&
> 	git push
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo2 &&
> 
> 	git --git-dir=gitrepo1/.git log -1 --format="%ai" > expected &&
> 	git --git-dir=gitrepo2/.git log -1 --format="%ai" > actual &&
> 	test_cmp expected actual
> 
> Cloning into 'gitrepo1'...
> marked working directory as branch parent/child
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> no changes found
> warning: You appear to have cloned an empty repository.
> Cloning into 'gitrepo'...
> [master (root-commit) 9f40cc0] two
>  Author: A U Thor <author@example.com>
>  Date: Mon Sep 26 00:00:00 2016 -0230
>  1 file changed, 1 insertion(+)
>  create mode 100644 content
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 3 changesets with 3 changes to 1 files
> new changesets 54ff8cd4985f:888fa7bd4eca
> no changes found
> WARNING: Ignoring matched branch parent/child
> searching for changes
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> progress revision 1 'parent' (0/1)
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main/tmp/hgrepo
>  * [new branch]      master -> master
> Cloning into 'gitrepo2'...
> ok 39 - clone can ignore invalid refnames
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo one > content &&
> 	hg add content &&
> 	hg commit -m one
> 	) &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo &&
> 	cd gitrepo &&
> 	git tag -m "Version 1.0" v1.0 &&
> 	git push --tags
> 	) &&
> 
> 	cat > expected <<-\EOF &&
> 	tip:Version 1.0:C O Mitter <committer@example.com>
> 	v1.0:one:H G Wells <wells@example.com>
> 	EOF
> 
> 	hg -R hgrepo log --template "{tags}:{desc}:{author}\n" > actual &&
> 
> 	test_cmp expected actual
> 
> WARNING: capability_push is disabled, only do so when really sure
> WARNING: various enhanced features might fail in subtle ways
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets e522f351d13b
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> ok 41 - timezone issues with negative offsets
> 
> # still have 2 known breakage(s)
> # failed 1 among remaining 39 test(s)
> 1..41
> make[3]: *** [Makefile:14: main.t] Error 1
> make[3]: *** Waiting for unfinished jobs....
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 0ead64d4452a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  * [new tag]         v1.0 -> v1.0
> ok 40 - push annotated tag
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo1 gitrepo2" &&
> 
> 	hg init hgrepo &&
> 
> 	(
> 	git clone "hg::hgrepo" gitrepo1 &&
> 	cd gitrepo1 &&
> 	echo two >> content &&
> 	git add content &&
> 	git commit -m two --date="2016-09-26 00:00:00 -0230" &&
> 	git push
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo2 &&
> 
> 	git --git-dir=gitrepo1/.git log -1 --format="%ai" > expected &&
> 	git --git-dir=gitrepo2/.git log -1 --format="%ai" > actual &&
> 	test_cmp expected actual
> 
> Cloning into 'gitrepo1'...
> no changes found
> warning: You appear to have cloned an empty repository.
> [master (root-commit) 9f40cc0] two
>  Author: A U Thor <author@example.com>
>  Date: Mon Sep 26 00:00:00 2016 -0230
>  1 file changed, 1 insertion(+)
>  create mode 100644 content
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>  * [new branch]      master -> master
> Cloning into 'gitrepo2'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets e522f351d13b
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> ok 41 - timezone issues with negative offsets
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo* gitrepo*" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero
> 	hg bookmark feature-a
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 	check_bookmark hgrepo feature-a zero &&
> 
> 	(
> 	cd gitrepo &&
> 	git push --quiet origin :feature-a
> 	) &&
> 
> 	check_bookmark hgrepo feature-a 
> 
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> adding remote bookmark feature-a
> added 1 changesets with 1 changes to 1 files
> new changesets ef4145728a16
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> no changes found
> error: refusing to update ref with bad name 'hg/origin/refs/heads/feature-a'
> ok 42 - remote delete bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo" &&
> 
> 	(
> 	hg init hgrepo &&
> 	cd hgrepo &&
> 	echo zero > content &&
> 	hg add content &&
> 	hg commit -m zero
> 	) &&
> 
> 	git clone "hg::hgrepo" gitrepo &&
> 
> 	(
> 	cd gitrepo &&
> 	echo one > content &&
> 	git commit -a -m one &&
> 	git push --quiet origin master:feature-b &&
> 	git push --quiet origin master^:refs/heads/feature-a
> 	) &&
> 
> 	check_bookmark hgrepo feature-a zero &&
> 	check_bookmark hgrepo feature-b one &&
> 
> 	(
> 	cd gitrepo &&
> 	git push --quiet origin master:feature-a
> 	) &&
> 
> 	check_bookmark hgrepo feature-a one
> 
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 7977c8996d5a
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> [master e024dd0] one
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+), 1 deletion(-)
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> no changes found
> adding remote bookmark feature-b
> 1 local changesets published
> searching for changes
> no changes found
> adding remote bookmark feature-a
> searching for changes
> ok 43 - source:dest bookmark
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_check_hg_commits_repo &&
> 
> 	(
> 	cd gitrepo &&
> 	git fetch origin &&
> 	git reset --hard origin/master &&
> 	! git push second master 2>../error
> 	)
> 
> 	cat error &&
> 	grep rejected error | grep hg
> 
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 3afbeb941afd
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> updating to branch default
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> no changes found
> progress revision walk 'branches/default' (0/0)
> progress revision 0 'default' (0/1)
> From hg::../hgrepo.second
>  * [new branch]      branches/default -> second/branches/default
>  * [new branch]      master           -> second/master
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 5 changesets with 5 changes to 2 files
> new changesets 4836ce160eff:392667d2ff1f
> progress revision 1 'default' (0/5)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    0b5b758..5509eb9  master           -> origin/master
>    0b5b758..5509eb9  branches/default -> origin/branches/default
> HEAD is now at 5509eb9 restored
> no changes found
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo.second
>  ! [remote rejected] master -> master (rejected not pushing hg based commit a64b3fe589250b05eb776601a3a653c5eda3908f)
> error: failed to push some refs to 'hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo.second'
>  ! [remote rejected] master -> master (rejected not pushing hg based commit a64b3fe589250b05eb776601a3a653c5eda3908f)
> ok 44 - check-hg-commits with fail mode
> 
> expecting success: 
> 	check_hg_commits_push
> 
> Cloning into 'gitrepo'...
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> updating to branch default
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> progress revision walk 'branches/default' (0/0)
> progress revision 0 'default' (0/1)
> From hg::../hgrepo.second
>  * [new branch]      branches/default -> second/branches/default
>  * [new branch]      master           -> second/master
> progress revision 1 'default' (0/5)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    8cbdc5a..f56ec8b  master           -> origin/master
>    8cbdc5a..f56ec8b  branches/default -> origin/branches/default
> HEAD is now at f56ec8b restored
> WARNING: Pushing hg changeset 379adfd6ad34cd4ffb64adfc2ca9832ac1c09db9 for 9dec641db52d04ca009555d920d70d273cc25445
> WARNING: Pushing hg changeset 96471208e32db1b76614e6e2c20efae5a4c3a75d for 75ae81cebacf9aa24ccf6d269f32c85f0b7b9118
> WARNING: Pushing hg changeset 4b83ccdfaf5f9c3ff5074606e098f94db49092c4 for b060fa70cefe714e9870765f0a99bd6e5b40bbd0
> WARNING: Pushing hg changeset fba624d686531b3e2b8752a36886acdcaa65f0ba for 5ba8d26465beaf07c29f7a925b1477483c0ab6d4
> WARNING: Pushing hg changeset c5fecd96cd28175108bdcd6241be1443f700d71f for f56ec8b5b927f5b1d6576f5e0ba6600a1dc84485
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo.second
>    fffffff..f56ec8b  master -> master
> WARNING: Pushing hg changeset 379adfd6ad34cd4ffb64adfc2ca9832ac1c09db9 for 9dec641db52d04ca009555d920d70d273cc25445
> WARNING: Pushing hg changeset 96471208e32db1b76614e6e2c20efae5a4c3a75d for 75ae81cebacf9aa24ccf6d269f32c85f0b7b9118
> WARNING: Pushing hg changeset 4b83ccdfaf5f9c3ff5074606e098f94db49092c4 for b060fa70cefe714e9870765f0a99bd6e5b40bbd0
> WARNING: Pushing hg changeset fba624d686531b3e2b8752a36886acdcaa65f0ba for 5ba8d26465beaf07c29f7a925b1477483c0ab6d4
> WARNING: Pushing hg changeset c5fecd96cd28175108bdcd6241be1443f700d71f for f56ec8b5b927f5b1d6576f5e0ba6600a1dc84485
> ok 45 - check-hg-commits with push mode - no local proxy
> 
> expecting success: 
> 	check_hg_commits_push
> 
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 071dda3df381
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> updating to branch default
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> no changes found
> progress revision walk 'branches/default' (0/0)
> progress revision 0 'default' (0/1)
> From hg::../hgrepo.second
>  * [new branch]      branches/default -> second/branches/default
>  * [new branch]      master           -> second/master
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 5 changesets with 5 changes to 2 files
> new changesets 432e32713ea2:3a672d952d2c
> progress revision 1 'default' (0/5)
> From hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo
>    de4bd61..690169c  master           -> origin/master
>    de4bd61..690169c  branches/default -> origin/branches/default
> HEAD is now at 690169c restored
> no changes found
> WARNING: Using hg changeset 432e32713ea2c6dde8dc037e98f1b3288d2d0ebb for 2cf443eb61769675c19ceb600f7391c854363191
> WARNING: Using hg changeset 3b954ff36f6cf1db25d0eaefb93a1507ee41b26a for 46b4aecbd32f10d28d314c0931df201f31ceef77
> WARNING: Using hg changeset 852aae30c660f09fb7b01637ff49974d37241641 for 645afb2ffa1645a23b446c5ab1b69b21135f4b12
> WARNING: Using hg changeset 8ddf4b10a8994af0a3024ff5ee59afe995e46e38 for 67bed509b8fd98f8cc1ec6acffac539eb1408f3d
> WARNING: Using hg changeset 3a672d952d2c1eabb7db4eb6547ad07ae8ea53ab for 690169ccb1968b202aa0fe3565a791ea8c1d41a5
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 5 changesets with 5 changes to 2 files
> To hg::/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/hgrepo.second
>    fffffff..690169c  master -> master
> WARNING: Using hg changeset 432e32713ea2c6dde8dc037e98f1b3288d2d0ebb for 2cf443eb61769675c19ceb600f7391c854363191
> WARNING: Using hg changeset 3b954ff36f6cf1db25d0eaefb93a1507ee41b26a for 46b4aecbd32f10d28d314c0931df201f31ceef77
> WARNING: Using hg changeset 852aae30c660f09fb7b01637ff49974d37241641 for 645afb2ffa1645a23b446c5ab1b69b21135f4b12
> WARNING: Using hg changeset 8ddf4b10a8994af0a3024ff5ee59afe995e46e38 for 67bed509b8fd98f8cc1ec6acffac539eb1408f3d
> WARNING: Using hg changeset 3a672d952d2c1eabb7db4eb6547ad07ae8ea53ab for 690169ccb1968b202aa0fe3565a791ea8c1d41a5
> ok 46 - check-hg-commits with push mode - with local proxy
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	setup_check_shared_marks_repo &&
> 
> 	(
> 	cd gitrepo &&
> 	check_marks .git/hg y &&
> 	check_marks .git/hg/origin n &&
> 	check_marks .git/hg/second n
> 	)
> 
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 2b48d1103016
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> no changes found
> From hg::../hgrepo
>  * [new branch]      branches/default -> second/branches/default
>  * [new branch]      master           -> second/master
> total 28
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 9 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .hg
> -rw-r--r-- 1 user42 user42  132 Feb 18 20:41 marks-git
> -rw-r--r-- 1 user42 user42  116 Feb 18 20:41 marks-hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 origin
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 second
> total 16
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> total 16
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> ok 47 - shared-marks unset
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	git config --global remote-hg.shared-marks true &&
> 	setup_check_shared_marks_repo &&
> 
> 	(
> 	cd gitrepo &&
> 	check_marks .git/hg y &&
> 	check_marks .git/hg/origin n &&
> 	check_marks .git/hg/second n
> 	) &&
> 
> 	git config --global remote-hg.shared-marks false &&
> 	(
> 		cd gitrepo &&
> 		git fetch origin &&
> 		check_marks .git/hg n &&
> 		check_marks .git/hg/origin y &&
> 		check_marks .git/hg/second y
> 	)
> 
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets d9ab48878b59
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> no changes found
> From hg::../hgrepo
>  * [new branch]      branches/default -> second/branches/default
>  * [new branch]      master           -> second/master
> total 28
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 9 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .hg
> -rw-r--r-- 1 user42 user42  132 Feb 18 20:41 marks-git
> -rw-r--r-- 1 user42 user42  116 Feb 18 20:41 marks-hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 origin
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 second
> total 16
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> total 16
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> WARNING: seeded marks of origin with shared; performing gc
> ERROR: found both .git/hg/origin/marks-git and .git/hg/marks-git
> WARNING: gc for origin failed
> WARNING: seeded marks of second with shared; performing gc
> Loading hg marks ...
> Loading git marks ...
> Performing garbage collection on git commits ...
> Computing marks intersection ...
> Including notes commits ...
> Writing hg marks ...
> Writing git marks ...
> no changes found
> total 20
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 9 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 origin
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 second
> total 24
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> -rw-r--r-- 1 user42 user42  132 Feb 18 20:41 marks-git
> -rw-r--r-- 1 user42 user42  116 Feb 18 20:41 marks-hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> total 20
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> -rw-r--r-- 1 user42 user42    0 Feb 18 20:41 marks-git
> -rw-r--r-- 1 user42 user42   71 Feb 18 20:41 marks-hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> ok 48 - shared-marks set to unset
> 
> expecting success: 
> 	test_when_finished "rm -rf gitrepo* hgrepo*" &&
> 
> 	git config --global remote-hg.shared-marks false &&
> 	setup_check_shared_marks_repo &&
> 
> 	(
> 	cd gitrepo &&
> 	check_marks .git/hg n &&
> 	check_marks .git/hg/origin y &&
> 	check_marks .git/hg/second y
> 	) &&
> 
> 	git config --global --unset remote-hg.shared-marks &&
> 	(
> 		cd gitrepo &&
> 		git fetch origin &&
> 		check_marks .git/hg n &&
> 		check_marks .git/hg/origin y &&
> 		check_marks .git/hg/second y
> 	) &&
> 
> 	git config --global remote-hg.shared-marks true &&
> 	(
> 		cd gitrepo &&
> 		git fetch origin &&
> 		check_marks .git/hg y &&
> 		check_marks .git/hg/origin n &&
> 		check_marks .git/hg/second n
> 	)
> 
> Cloning into 'gitrepo'...
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 1 changes to 1 files
> new changesets 1964fa3f1da3
> progress revision walk 'bookmarks/master' (0/0)
> progress revision 0 'master' (0/1)
> no changes found
> progress revision walk 'branches/default' (0/0)
> progress revision 0 'default' (0/1)
> From hg::../hgrepo
>  * [new branch]      branches/default -> second/branches/default
>  * [new branch]      master           -> second/master
> total 20
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 9 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 origin
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 second
> total 24
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> -rw-r--r-- 1 user42 user42  132 Feb 18 20:41 marks-git
> -rw-r--r-- 1 user42 user42  116 Feb 18 20:41 marks-hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> total 24
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> -rw-r--r-- 1 user42 user42  132 Feb 18 20:41 marks-git
> -rw-r--r-- 1 user42 user42  116 Feb 18 20:41 marks-hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> no changes found
> total 20
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 9 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 origin
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 second
> total 24
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> -rw-r--r-- 1 user42 user42  132 Feb 18 20:41 marks-git
> -rw-r--r-- 1 user42 user42  116 Feb 18 20:41 marks-hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> total 24
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> -rw-r--r-- 1 user42 user42  132 Feb 18 20:41 marks-git
> -rw-r--r-- 1 user42 user42  116 Feb 18 20:41 marks-hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> WARNING: using marks of remote origin as shared marks
> no changes found
> total 28
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 9 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 .hg
> -rw-r--r-- 1 user42 user42  132 Feb 18 20:41 marks-git
> -rw-r--r-- 1 user42 user42  116 Feb 18 20:41 marks-hg
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 origin
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 second
> total 16
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> total 16
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 .
> drwxr-xr-x 5 user42 user42 4096 Feb 18 20:41 ..
> drwxr-xr-x 3 user42 user42 4096 Feb 18 20:41 clone
> drwxr-xr-x 4 user42 user42 4096 Feb 18 20:41 refs
> ok 49 - shared-marks unset to set
> 
> expecting success: 
> 	test_when_finished "rm -rf hgrepo gitrepo*" &&
> 
> 	hg init hgrepo &&
> 
> 	(
> 	git init gitrepo &&
> 	cd gitrepo &&
> 	git remote add origin "hg::../hgrepo" &&
> 	echo one > content &&
> 	chmod a+x content &&
> 	git add content &&
> 	git commit -a -m one &&
> 	git mv content content2 &&
> 	git commit -a -m two &&
> 	git push origin master
> 	) &&
> 
> 	(
> 	cd hgrepo &&
> 	hg update &&
> 	stat content2 >expected &&
> 	# umask mileage might vary
> 	grep -- -r.xr.xr.x expected
> 	)
> 
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/gitrepo/.git/
> [master (root-commit) 5913097] one
>  Author: A U Thor <author@example.com>
>  1 file changed, 1 insertion(+)
>  create mode 100755 content
> [master cbb24bc] two
>  Author: A U Thor <author@example.com>
>  1 file changed, 0 insertions(+), 0 deletions(-)
>  rename content => content2 (100%)
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 2 changesets with 2 changes to 2 files
> To hg::../hgrepo
>  * [new branch]      master -> master
> 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
> Access: (0755/-rwxr-xr-x)  Uid: ( 1001/  user42)   Gid: ( 1001/  user42)
> ok 50 - push with renamed executable preserves executable bit
> 
> expecting success: 
> 	test_when_finished "rm -rf sub hgrepo gitrepo*" &&
> 
> 	hg init hgrepo &&
> 
> 	(
> 	git init sub &&
> 	cd sub &&
> 	: >empty &&
> 	git add empty &&
> 	git commit -m init
> 	) &&
> 
> 	(
> 	git init gitrepo &&
> 	cd gitrepo &&
> 	git submodule add ../sub sub &&
> 	git remote add origin "hg::../hgrepo" &&
> 	git commit -a -m sub &&
> 	git push origin master
> 	) &&
> 
> 	(
> 	cd hgrepo &&
> 	hg update &&
> 	expected="[git-remote-hg: skipped import of submodule at $(git -C ../sub rev-parse HEAD)]"
> 	test "$expected" = "$(cat sub)"
> 	)
> 
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/sub/.git/
> [master (root-commit) be983cd] init
>  Author: A U Thor <author@example.com>
>  1 file changed, 0 insertions(+), 0 deletions(-)
>  create mode 100644 empty
> hint: Using 'master' as the name for the initial branch. This default branch name
> hint: is subject to change. To configure the initial branch name to use in all
> hint: of your new repositories, which will suppress this warning, call:
> hint: 
> hint: 	git config --global init.defaultBranch <name>
> hint: 
> hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
> hint: 'development'. The just-created branch can be renamed via this command:
> hint: 
> hint: 	git branch -m <name>
> Initialized empty Git repository in /<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/gitrepo/.git/
> Cloning into '/<<PKGBUILDDIR>>/test/trash directory.main-push/tmp/gitrepo/sub'...
> done.
> [master (root-commit) c56d720] sub
>  Author: A U Thor <author@example.com>
>  2 files changed, 4 insertions(+)
>  create mode 100644 .gitmodules
>  create mode 160000 sub
> no changes found
> searching for changes
> adding changesets
> adding manifests
> adding file changes
> added 1 changesets with 2 changes to 2 files
> To hg::../hgrepo
>  * [new branch]      master -> master
> 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
> ok 51 - push with submodule
> 
> # passed all 51 test(s)
> 1..51
> make[3]: Leaving directory '/<<PKGBUILDDIR>>/test'
> make[2]: *** [Makefile:11: test] Error 2
> make[2]: Leaving directory '/<<PKGBUILDDIR>>'
> dh_auto_test: error: make -j8 test returned exit code 2


The full build log is available from:
http://qa-logs.debian.net/2022/02/18/git-remote-hg_1.0.2.1~ds-3_unstable.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

If you reassign this bug to another package, please marking it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects

If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.

--- End Message ---
--- Begin Message ---
Source: git-remote-hg
Source-Version: 1.0.3.2~ds-1
Done: Paul Wise <pabs@debian.org>

We believe that the bug you reported is fixed in the latest version of
git-remote-hg, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 1006038@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Paul Wise <pabs@debian.org> (supplier of updated git-remote-hg package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Format: 1.8
Date: Thu, 24 Feb 2022 07:03:11 +0800
Source: git-remote-hg
Architecture: source
Version: 1.0.3.2~ds-1
Distribution: unstable
Urgency: medium
Maintainer: Debian QA Group <packages@qa.debian.org>
Changed-By: Paul Wise <pabs@debian.org>
Closes: 826002 1006038
Changes:
 git-remote-hg (1.0.3.2~ds-1) unstable; urgency=medium
 .
   * QA upload.
   * New upstream release.
     - Fixes test failure with git 2.35.1 (Closes: #1006038)
     - Fixes invalid character encoding with Python 3.7 (Closes: #826002)
   * Drop Python shebangs and sharness issues, upstream handles that now
   * Drop installing git-hg-helper, upstream handles that now
   * Use new upstream option to test installed package in autopkgtest
   * Add Documentation URL to upstream metadata
   * Declare compliance with Debian Policy 4.6.0, no changes needed
Checksums-Sha1:
 d8744c1ed3b88a4d43e4e5863c14923af6f0e284 2117 git-remote-hg_1.0.3.2~ds-1.dsc
 98ab02fa4d264dd13f368d690501b2ee853ff18a 51068 git-remote-hg_1.0.3.2~ds.orig.tar.xz
 6bf3e5d8dd77b900876728e727aabd1655e2306a 5708 git-remote-hg_1.0.3.2~ds-1.debian.tar.xz
Checksums-Sha256:
 d48dcfe3c13be9f29ecf2ae5ceb82de976fadcf3622fbf04648e5c11d231cd1b 2117 git-remote-hg_1.0.3.2~ds-1.dsc
 c0c21b46e935aa41d621c234b640f198b40d426392f291bb9c4c18b02bae4157 51068 git-remote-hg_1.0.3.2~ds.orig.tar.xz
 99b223644d2e5a8e45fffd377e1297de4f3e0fb837cafd15f34815fdf3b824b5 5708 git-remote-hg_1.0.3.2~ds-1.debian.tar.xz
Files:
 96fdd87cff93b3d7067c683c29115bf0 2117 vcs optional git-remote-hg_1.0.3.2~ds-1.dsc
 d5f79f20e7d504b0b12810a86f61abe0 51068 vcs optional git-remote-hg_1.0.3.2~ds.orig.tar.xz
 27e594ea41dfac555059d50b3a5f19bb 5708 vcs optional git-remote-hg_1.0.3.2~ds-1.debian.tar.xz

-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEYQsotVz8/kXqG1Y7MRa6Xp/6aaMFAmIWv78ACgkQMRa6Xp/6
aaO8Vg//bGAvYtD6UMdCs/oIvxcMUf/bQ7+atk+usCRHC16n5C7459ZbnKzRRhwO
kCF1738xUk5l5zECoF5wWqMUb9KRGdgSef0eBR+dMpOwzoZJIY8HlaZtu4ClqaN4
dJPArAOtVqZEWdwuV48huxOULTrCkcCV6icMVc4SFfanFq1G/KfDRUGxWRBQ4rQR
x4wAWg5fjJHdG6Dn0u7RiuT0InGAVgqCCj/dJsuT9tEna9XUs8RnTvLdmh9iR5+P
SHz5ehfy6L5nlXUJyhKF1R3gNv8fyP+wbn7aoUW/y2Q2UI/tshhB0ZweByoeZWmj
+QYB/yQ4ExjBiSq+hZ15b5QtBYqN68JH2+JQdddP7bzmt7RJp6FKrH2CvZR2+z8R
/E/SK2VcncYOGtBzQrVWiSFQkeiXm7GYzzDPkLHx48xAKy6l0muCs+JtcT1LmY6y
KKlR4Z19kUGvgexS0LdW0C6xTYaqZswLWBe0Nd0LiQI72ySUH2XK97ocscsJ9I4q
VsZa85k6IvKHA6YwSTAJHPfyBDJjD9GTS+dMCFCrrBAbOIY4BktWE+gjKb5mhCjo
ZO76xcX88eO4wMsAQaNrWwqtupaO8b/57KhdHwEQht1Q2pMX3p5EHh+2u7Oho8ku
4oZ9eCMmEVVBGKg5cDJ3p5cBvm/DW6nTIP3iuuQD0dpnZoCEywo=
=HC+m
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: