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/t2071-restore-patch.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/t2071-restore-patch.sh')
-rwxr-xr-x | third_party/git/t/t2071-restore-patch.sh | 110 |
1 files changed, 0 insertions, 110 deletions
diff --git a/third_party/git/t/t2071-restore-patch.sh b/third_party/git/t/t2071-restore-patch.sh deleted file mode 100755 index 98b2476e7c79..000000000000 --- a/third_party/git/t/t2071-restore-patch.sh +++ /dev/null @@ -1,110 +0,0 @@ -#!/bin/sh - -test_description='git restore --patch' - -. ./lib-patch-mode.sh - -test_expect_success PERL 'setup' ' - mkdir dir && - echo parent >dir/foo && - echo dummy >bar && - git add bar dir/foo && - git commit -m initial && - test_tick && - test_commit second dir/foo head && - set_and_save_state bar bar_work bar_index && - save_head -' - -test_expect_success PERL 'restore -p without pathspec is fine' ' - echo q >cmd && - git restore -p <cmd -' - -# note: bar sorts before dir/foo, so the first 'n' is always to skip 'bar' - -test_expect_success PERL 'saying "n" does nothing' ' - set_and_save_state dir/foo work head && - test_write_lines n n | git restore -p && - verify_saved_state bar && - verify_saved_state dir/foo -' - -test_expect_success PERL 'git restore -p' ' - set_and_save_state dir/foo work head && - test_write_lines n y | git restore -p && - verify_saved_state bar && - verify_state dir/foo head head -' - -test_expect_success PERL 'git restore -p with staged changes' ' - set_state dir/foo work index && - test_write_lines n y | git restore -p && - verify_saved_state bar && - verify_state dir/foo index index -' - -test_expect_success PERL 'git restore -p --source=HEAD' ' - set_state dir/foo work index && - # the third n is to get out in case it mistakenly does not apply - test_write_lines n y n | git restore -p --source=HEAD && - verify_saved_state bar && - verify_state dir/foo head index -' - -test_expect_success PERL 'git restore -p --source=HEAD^' ' - set_state dir/foo work index && - # the third n is to get out in case it mistakenly does not apply - test_write_lines n y n | git restore -p --source=HEAD^ && - verify_saved_state bar && - verify_state dir/foo parent index -' - -test_expect_success PERL 'git restore -p handles deletion' ' - set_state dir/foo work index && - rm dir/foo && - test_write_lines n y | git restore -p && - verify_saved_state bar && - verify_state dir/foo index index -' - -# The idea in the rest is that bar sorts first, so we always say 'y' -# first and if the path limiter fails it'll apply to bar instead of -# dir/foo. There's always an extra 'n' to reject edits to dir/foo in -# the failure case (and thus get out of the loop). - -test_expect_success PERL 'path limiting works: dir' ' - set_state dir/foo work head && - test_write_lines y n | git restore -p dir && - verify_saved_state bar && - verify_state dir/foo head head -' - -test_expect_success PERL 'path limiting works: -- dir' ' - set_state dir/foo work head && - test_write_lines y n | git restore -p -- dir && - verify_saved_state bar && - verify_state dir/foo head head -' - -test_expect_success PERL 'path limiting works: HEAD^ -- dir' ' - set_state dir/foo work head && - # the third n is to get out in case it mistakenly does not apply - test_write_lines y n n | git restore -p --source=HEAD^ -- dir && - verify_saved_state bar && - verify_state dir/foo parent head -' - -test_expect_success PERL 'path limiting works: foo inside dir' ' - set_state dir/foo work head && - # the third n is to get out in case it mistakenly does not apply - test_write_lines y n n | (cd dir && git restore -p foo) && - verify_saved_state bar && - verify_state dir/foo head head -' - -test_expect_success PERL 'none of this moved HEAD' ' - verify_saved_head -' - -test_done |