merge(3p/git): Merge git subtree at v2.29.2
This also bumps the stable nixpkgs to 20.09 as of 2020-11-21, because there is some breakage in the git build related to the netrc credentials helper which someone has taken care of in nixpkgs. The stable channel is not used for anything other than git, so this should be fine. Change-Id: I3575a19dab09e1e9556cf8231d717de9890484fb
This commit is contained in:
parent
082c006c04
commit
f4609b896f
1485 changed files with 241535 additions and 109418 deletions
39
third_party/git/t/t2070-restore.sh
vendored
39
third_party/git/t/t2070-restore.sh
vendored
|
@ -69,6 +69,17 @@ test_expect_success 'restore --staged uses HEAD as source' '
|
|||
test_cmp expected actual
|
||||
'
|
||||
|
||||
test_expect_success 'restore --worktree --staged uses HEAD as source' '
|
||||
test_when_finished git reset --hard &&
|
||||
git show HEAD:./first.t >expected &&
|
||||
echo dirty >>first.t &&
|
||||
git add first.t &&
|
||||
git restore --worktree --staged first.t &&
|
||||
git show :./first.t >actual &&
|
||||
test_cmp expected actual &&
|
||||
test_cmp expected first.t
|
||||
'
|
||||
|
||||
test_expect_success 'restore --ignore-unmerged ignores unmerged entries' '
|
||||
git init unmerged &&
|
||||
(
|
||||
|
@ -95,4 +106,32 @@ test_expect_success 'restore --ignore-unmerged ignores unmerged entries' '
|
|||
)
|
||||
'
|
||||
|
||||
test_expect_success 'restore --staged adds deleted intent-to-add file back to index' '
|
||||
echo "nonempty" >nonempty &&
|
||||
>empty &&
|
||||
git add nonempty empty &&
|
||||
git commit -m "create files to be deleted" &&
|
||||
git rm --cached nonempty empty &&
|
||||
git add -N nonempty empty &&
|
||||
git restore --staged nonempty empty &&
|
||||
git diff --cached --exit-code
|
||||
'
|
||||
|
||||
test_expect_success 'restore --staged invalidates cache tree for deletions' '
|
||||
test_when_finished git reset --hard &&
|
||||
>new1 &&
|
||||
>new2 &&
|
||||
git add new1 new2 &&
|
||||
|
||||
# It is important to commit and then reset here, so that the index
|
||||
# contains a valid cache-tree for the "both" tree.
|
||||
git commit -m both &&
|
||||
git reset --soft HEAD^ &&
|
||||
|
||||
git restore --staged new1 &&
|
||||
git commit -m "just new2" &&
|
||||
git rev-parse HEAD:new2 &&
|
||||
test_must_fail git rev-parse HEAD:new1
|
||||
'
|
||||
|
||||
test_done
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue