diff options
author | Vincent Ambo <mail@tazj.in> | 2021-09-21T10·03+0300 |
---|---|---|
committer | Vincent Ambo <mail@tazj.in> | 2021-09-21T11·29+0300 |
commit | 43b1791ec601732ac31195df96781a848360a9ac (patch) | |
tree | daae8d638343295d2f1f7da955e556ef4c958864 /third_party/git/t/t1416-ref-transaction-hooks.sh | |
parent | 2d8e7dc9d9c38127ec4ebd13aee8e8f586a43318 (diff) |
chore(3p/git): Unvendor git and track patches instead r/2903
This was vendored a long time ago under the expectation that keeping it in sync with cgit would be easier this way, but it has proven not to be a big issue. On the other hand, a vendored copy of git is an annoying maintenance burden. It is much easier to rebase the single (dottime) patch that we have. This removes the vendored copy of git and instead passes the git source code to cgit via `pkgs.srcOnly`, which includes the applied patch so that cgit can continue rendering dottime. Change-Id: If31f62dea7ce688fd1b9050204e9378019775f2b
Diffstat (limited to 'third_party/git/t/t1416-ref-transaction-hooks.sh')
-rwxr-xr-x | third_party/git/t/t1416-ref-transaction-hooks.sh | 136 |
1 files changed, 0 insertions, 136 deletions
diff --git a/third_party/git/t/t1416-ref-transaction-hooks.sh b/third_party/git/t/t1416-ref-transaction-hooks.sh deleted file mode 100755 index f6e741c6c055..000000000000 --- a/third_party/git/t/t1416-ref-transaction-hooks.sh +++ /dev/null @@ -1,136 +0,0 @@ -#!/bin/sh - -test_description='reference transaction hooks' - -. ./test-lib.sh - -test_expect_success setup ' - mkdir -p .git/hooks && - test_commit PRE && - PRE_OID=$(git rev-parse PRE) && - test_commit POST && - POST_OID=$(git rev-parse POST) -' - -test_expect_success 'hook allows updating ref if successful' ' - test_when_finished "rm .git/hooks/reference-transaction" && - git reset --hard PRE && - write_script .git/hooks/reference-transaction <<-\EOF && - echo "$*" >>actual - EOF - cat >expect <<-EOF && - prepared - committed - EOF - git update-ref HEAD POST && - test_cmp expect actual -' - -test_expect_success 'hook aborts updating ref in prepared state' ' - test_when_finished "rm .git/hooks/reference-transaction" && - git reset --hard PRE && - write_script .git/hooks/reference-transaction <<-\EOF && - if test "$1" = prepared - then - exit 1 - fi - EOF - test_must_fail git update-ref HEAD POST 2>err && - test_i18ngrep "ref updates aborted by hook" err -' - -test_expect_success 'hook gets all queued updates in prepared state' ' - test_when_finished "rm .git/hooks/reference-transaction actual" && - git reset --hard PRE && - write_script .git/hooks/reference-transaction <<-\EOF && - if test "$1" = prepared - then - while read -r line - do - printf "%s\n" "$line" - done >actual - fi - EOF - cat >expect <<-EOF && - $ZERO_OID $POST_OID HEAD - $ZERO_OID $POST_OID refs/heads/master - EOF - git update-ref HEAD POST <<-EOF && - update HEAD $ZERO_OID $POST_OID - update refs/heads/master $ZERO_OID $POST_OID - EOF - test_cmp expect actual -' - -test_expect_success 'hook gets all queued updates in committed state' ' - test_when_finished "rm .git/hooks/reference-transaction actual" && - git reset --hard PRE && - write_script .git/hooks/reference-transaction <<-\EOF && - if test "$1" = committed - then - while read -r line - do - printf "%s\n" "$line" - done >actual - fi - EOF - cat >expect <<-EOF && - $ZERO_OID $POST_OID HEAD - $ZERO_OID $POST_OID refs/heads/master - EOF - git update-ref HEAD POST && - test_cmp expect actual -' - -test_expect_success 'hook gets all queued updates in aborted state' ' - test_when_finished "rm .git/hooks/reference-transaction actual" && - git reset --hard PRE && - write_script .git/hooks/reference-transaction <<-\EOF && - if test "$1" = aborted - then - while read -r line - do - printf "%s\n" "$line" - done >actual - fi - EOF - cat >expect <<-EOF && - $ZERO_OID $POST_OID HEAD - $ZERO_OID $POST_OID refs/heads/master - EOF - git update-ref --stdin <<-EOF && - start - update HEAD POST $ZERO_OID - update refs/heads/master POST $ZERO_OID - abort - EOF - test_cmp expect actual -' - -test_expect_success 'interleaving hook calls succeed' ' - test_when_finished "rm -r target-repo.git" && - - git init --bare target-repo.git && - - write_script target-repo.git/hooks/reference-transaction <<-\EOF && - echo $0 "$@" >>actual - EOF - - write_script target-repo.git/hooks/update <<-\EOF && - echo $0 "$@" >>actual - EOF - - cat >expect <<-EOF && - hooks/update refs/tags/PRE $ZERO_OID $PRE_OID - hooks/reference-transaction prepared - hooks/reference-transaction committed - hooks/update refs/tags/POST $ZERO_OID $POST_OID - hooks/reference-transaction prepared - hooks/reference-transaction committed - EOF - - git push ./target-repo.git PRE POST && - test_cmp expect target-repo.git/actual -' - -test_done |