summaryrefslogtreecommitdiff
path: root/contrib
diff options
context:
space:
mode:
authorDenton Liu <liu.denton@gmail.com>2020-10-08 06:44:40 (GMT)
committerJunio C Hamano <gitster@pobox.com>2020-10-08 18:48:56 (GMT)
commite37eae0c1e13cb418947383f7c803d9463bfa3d7 (patch)
tree18a487563c2ca02594287cdd3e25b4767d77735c /contrib
parentd047154e7b2ab9c7191b0d72484012085051d521 (diff)
downloadgit-e37eae0c1e13cb418947383f7c803d9463bfa3d7.zip
git-e37eae0c1e13cb418947383f7c803d9463bfa3d7.tar.gz
git-e37eae0c1e13cb418947383f7c803d9463bfa3d7.tar.bz2
contrib/git-resurrect.sh: use hash-agnostic OID pattern
Since Git now supports hashes other than SHA-1, the hash length isn't guaranteed to be 40 characters. Replace $_x40 with a hash-agnostic OID pattern. Signed-off-by: Denton Liu <liu.denton@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'contrib')
-rwxr-xr-xcontrib/git-resurrect.sh7
1 files changed, 3 insertions, 4 deletions
diff --git a/contrib/git-resurrect.sh b/contrib/git-resurrect.sh
index 57a77c0..d843df3 100755
--- a/contrib/git-resurrect.sh
+++ b/contrib/git-resurrect.sh
@@ -37,19 +37,18 @@ search_reflog_merges () {
)
}
-_x40="[0-9a-f][0-9a-f][0-9a-f][0-9a-f][0-9a-f]"
-_x40="$_x40$_x40$_x40$_x40$_x40$_x40$_x40$_x40"
+oid_pattern=$(git hash-object --stdin </dev/null | sed -e 's/./[0-9a-f]/g')
search_merges () {
git rev-list --all --grep="Merge branch '$1'" \
--pretty=tformat:"%P %s" |
- sed -ne "/^$_x40 \($_x40\) Merge .*/ {s//\1/p;$early_exit}"
+ sed -ne "/^$oid_pattern \($oid_pattern\) Merge .*/ {s//\1/p;$early_exit}"
}
search_merge_targets () {
git rev-list --all --grep="Merge branch '[^']*' into $branch\$" \
--pretty=tformat:"%H %s" --all |
- sed -ne "/^\($_x40\) Merge .*/ {s//\1/p;$early_exit} "
+ sed -ne "/^\($oid_pattern\) Merge .*/ {s//\1/p;$early_exit} "
}
dry_run=