Subject: Re: [PATCH v3] remote-hg: do not fail on invalid bookmarks

From: Junio C Hamano <[email-masked]>
Date: Fri, 21 Mar 2014 15:32:24 -0700

Max Horn <[email-masked]> writes:

> Hi Torsten,
>
> On 21.03.2014, at 21:47, Torsten Bögershausen <[email-masked]> wrote:
>
>> On 2014-03-21 12.36, Max Horn wrote:
>> All tests passed :-),
>
> Excellent.
>
>> thanks from my side.
>> comments inline, some are debatable
>
> Thanks for having a close look and for the constructive feedback!
> Unfortunately, I won't have time to look into this for the next 7 days
> or so. I wouldn't mind if the patch gets queued with the changes you
> suggest; but of course that might be a tad too much to ask for, so I'll
> also be happy to do a "proper" re-roll, but then it has to wait a bit.

In the meantime, I'll pile this on top as "SQUASH???".

I am not sure how the original, which went into a subdirectory
gitrepo that is to be cleaned with test_when_finished, was working.
Perhaps it didn't clean and dug the trash directory hierarchy deeper
and deeper, or something?

 contrib/remote-helpers/test-hg.sh | 80 +++++++++++++++++++++------------------
 1 file changed, 43 insertions(+), 37 deletions(-)

diff --git a/contrib/remote-helpers/test-hg.sh b/contrib/remote-helpers/test-hg.sh
index 6925ca3..8834482 100755
--- a/contrib/remote-helpers/test-hg.sh
+++ b/contrib/remote-helpers/test-hg.sh
@@ -694,68 +694,74 @@ test_expect_success 'remote double failed push' '
 test_expect_success 'clone remote with master null bookmark, then push to the bookmark' '
 	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 master
+	(
+		cd hgrepo &&
+		echo a >a &&
+		hg add a &&
+		hg commit -m a &&
+		hg bookmark -r null master
 	) &&
 
 	git clone "hg::hgrepo" gitrepo &&
 	check gitrepo HEAD a &&
-	cd gitrepo &&
-	git checkout --quiet -b master &&
-	echo b >b &&
-	git add b &&
-	git commit -m b &&
-	git push origin master
+	(
+		cd gitrepo &&
+		git checkout --quiet -b master &&
+		echo b >b &&
+		git add b &&
+		git commit -m b &&
+		git push origin master
+	)
 '
 
 test_expect_success 'clone remote with default null bookmark, then push to the bookmark' '
 	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 -f default
+	(
+		cd hgrepo &&
+		echo a >a &&
+		hg add a &&
+		hg commit -m a &&
+		hg bookmark -r null -f default
 	) &&
 
 	git clone "hg::hgrepo" gitrepo &&
 	check gitrepo HEAD a &&
-	cd gitrepo &&
-	git checkout --quiet -b default &&
-	echo b >b &&
-	git add b &&
-	git commit -m b &&
-	git push origin default
+	(
+		cd gitrepo &&
+		git checkout --quiet -b default &&
+		echo b >b &&
+		git add b &&
+		git commit -m b &&
+		git push origin default
+	)
 '
 
 test_expect_success 'clone remote with generic null bookmark, then push to the bookmark' '
 	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 bmark
+	(
+		cd hgrepo &&
+		echo a >a &&
+		hg add a &&
+		hg commit -m a &&
+		hg bookmark -r null bmark
 	) &&
 
 	git clone "hg::hgrepo" gitrepo &&
 	check gitrepo HEAD a &&
-	cd gitrepo &&
-	git checkout --quiet -b bmark &&
-	git remote -v &&
-	echo b >b &&
-	git add b &&
-	git commit -m b &&
-	git push origin bmark
+	(
+		cd gitrepo &&
+		git checkout --quiet -b bmark &&
+		git remote -v &&
+		echo b >b &&
+		git add b &&
+		git commit -m b &&
+		git push origin bmark
+	)
 '
 
 test_done