diff options
author | Junio C Hamano <gitster@pobox.com> | 2019-01-05 00:33:34 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-01-05 00:33:34 +0300 |
commit | 1328d29943c81602bedba085e8c41acf01b4c866 (patch) | |
tree | 6fb53598b781b9d2e93e3f7d400af0660a7b9617 /t | |
parent | 84d178316fbe7e93b11e34604fcee86812802986 (diff) | |
parent | 3bc2111fc2e9e8ff33b48bb2ccd17b77ca7dbced (diff) |
Merge branch 'sd/stash-wo-user-name'
A properly configured username/email is required under
user.useConfigOnly in order to create commits; now "git stash"
(even though it creates commit objects to represent stash entries)
command is exempt from the requirement.
* sd/stash-wo-user-name:
stash: tolerate missing user identity
Diffstat (limited to 't')
-rwxr-xr-x | t/t3903-stash.sh | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/t/t3903-stash.sh b/t/t3903-stash.sh index cd216655b9..5f8272b6f9 100755 --- a/t/t3903-stash.sh +++ b/t/t3903-stash.sh @@ -1096,4 +1096,32 @@ test_expect_success 'stash -- <subdir> works with binary files' ' test_path_is_file subdir/untracked ' +test_expect_success 'stash works when user.name and user.email are not set' ' + git reset && + >1 && + git add 1 && + echo "$GIT_AUTHOR_NAME <$GIT_AUTHOR_EMAIL>" >expect && + git stash && + git show -s --format="%an <%ae>" refs/stash >actual && + test_cmp expect actual && + >2 && + git add 2 && + test_config user.useconfigonly true && + test_config stash.usebuiltin true && + ( + sane_unset GIT_AUTHOR_NAME && + sane_unset GIT_AUTHOR_EMAIL && + sane_unset GIT_COMMITTER_NAME && + sane_unset GIT_COMMITTER_EMAIL && + test_unconfig user.email && + test_unconfig user.name && + test_must_fail git commit -m "should fail" && + echo "git stash <git@stash>" >expect && + >2 && + git stash && + git show -s --format="%an <%ae>" refs/stash >actual && + test_cmp expect actual + ) +' + test_done |