t5515-fetch-merge-logic removes many, but not all, refs between each test. This is done by removing the corresponding refs/foo/* files in the .git/refs hierarchy. However, once "git clone" starts producing packed refs, these refs will no longer be in the .git/refs hierarchy, but rather listed in .git/packed-refs. This patch therefore teaches t5515-fetch-merge-logic to also remove the refs in question from the packed-refs file. Signed-off-by: Johan Herland <johan@xxxxxxxxxxx> --- t/t5515-fetch-merge-logic.sh | 19 +++++++++++++++++++ 1 files changed, 19 insertions(+), 0 deletions(-) diff --git a/t/t5515-fetch-merge-logic.sh b/t/t5515-fetch-merge-logic.sh index 65c3774..8a8c35c 100755 --- a/t/t5515-fetch-merge-logic.sh +++ b/t/t5515-fetch-merge-logic.sh @@ -145,6 +145,25 @@ do rm -f .git/refs/heads/* rm -f .git/refs/remotes/rem/* rm -f .git/refs/tags/* + cat .git/packed-refs | \ + while read sha1 refname + do + case "$sha1" in + ^*) # remove peeled tags + ;; + *) + case "$refname" in + refs/heads/*|\ + refs/remotes/rem/*|\ + refs/tags/*) # remove same as above + ;; + *) # keep everything else + echo "$sha1 $refname" + ;; + esac + esac + done > .git/packed-refs.new + mv .git/packed-refs.new .git/packed-refs git fetch "$@" >/dev/null cat .git/FETCH_HEAD } >"$actual_f" && -- 1.5.5.159.g8c84b -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html