Merge branch 'sd/stash-wo-user-name'
* sd/stash-wo-user-name: stash: tolerate missing user identity
This commit is contained in:
commit
eacdb4d2f4
17
git-stash.sh
17
git-stash.sh
@ -55,6 +55,20 @@ untracked_files () {
|
||||
git ls-files -o $z $excl_opt -- "$@"
|
||||
}
|
||||
|
||||
prepare_fallback_ident () {
|
||||
if ! git -c user.useconfigonly=yes var GIT_COMMITTER_IDENT >/dev/null 2>&1
|
||||
then
|
||||
GIT_AUTHOR_NAME="git stash"
|
||||
GIT_AUTHOR_EMAIL=git@stash
|
||||
GIT_COMMITTER_NAME="git stash"
|
||||
GIT_COMMITTER_EMAIL=git@stash
|
||||
export GIT_AUTHOR_NAME
|
||||
export GIT_AUTHOR_EMAIL
|
||||
export GIT_COMMITTER_NAME
|
||||
export GIT_COMMITTER_EMAIL
|
||||
fi
|
||||
}
|
||||
|
||||
clear_stash () {
|
||||
if test $# != 0
|
||||
then
|
||||
@ -67,6 +81,9 @@ clear_stash () {
|
||||
}
|
||||
|
||||
create_stash () {
|
||||
|
||||
prepare_fallback_ident
|
||||
|
||||
stash_msg=
|
||||
untracked=
|
||||
while test $# != 0
|
||||
|
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user