diff options
author | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2012-12-13 12:36:07 +0000 |
---|---|---|
committer | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2012-12-13 15:37:53 +0000 |
commit | de50cec19b4f7e4c5a6da5ecc5cddd7a52ac3725 (patch) | |
tree | 552fdae98cd0cc15d0b8a23ee225751b1d8ae374 /tests/update-gits-chunk.script | |
parent | d63c97a0bef1cd2f03ca266acda67cad065632df (diff) | |
download | morph-de50cec19b4f7e4c5a6da5ecc5cddd7a52ac3725.tar.gz |
Always use `git rev-parse --verify` to resolve refs
Previously some code used `git show-ref`, which is wrong -- given two
refs named 'alpha/master' and 'master', `git show-ref master` will
return both, sorted alphabetically. This can lead to build failures,
etc. due to refs resolving to the wrong SHAs.
We should also use `git rev-parse --verify` to verify SHA1s, which
we previously did with `git rev-list`.
Finally, `git rev-parse --verify` is more than twice as fast as
`git show-ref`.
Diffstat (limited to 'tests/update-gits-chunk.script')
-rwxr-xr-x | tests/update-gits-chunk.script | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tests/update-gits-chunk.script b/tests/update-gits-chunk.script index c2ad08d0..288438ec 100755 --- a/tests/update-gits-chunk.script +++ b/tests/update-gits-chunk.script @@ -31,7 +31,7 @@ REPO_ALIAS='test=git://localhost:9419/%s#git://localhost:9419/%s' cd "$DATADIR/chunk-repo" git checkout --quiet farrokh git commit --quiet --allow-empty --allow-empty-message -m "" -NEWREF="$(git show-ref --hash farrokh)" +NEWREF="$(git rev-parse --verify farrokh)" "$SRCDIR/scripts/test-morph" --repo-alias=$REPO_ALIAS update-gits \ test:chunk-repo farrokh hello @@ -40,4 +40,4 @@ kill $(cat "$DATADIR/git.pid") # Check the top commit of the cached repo's farrokh branch cd "$DATADIR/cache/gits/"*chunk?repo* -test "$(git show-ref --hash refs/heads/farrokh)" = "$NEWREF" +test "$(git rev-parse --verify refs/heads/farrokh)" = "$NEWREF" |