diff options
author | Junio C Hamano <gitster@pobox.com> | 2016-02-17 10:13:31 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2016-02-17 10:13:31 -0800 |
commit | c37f9a1bc38cad56c9eca40014802e7cd822c21c (patch) | |
tree | 9dbd9746f9cd3f6949eec3a7a10d54ac5ed047f0 /t | |
parent | dbda66b0e283494c35958316c9b1c47b6e6c9f59 (diff) | |
parent | 4d5c2956969a6690db2bbb2f3ff40459c09d7646 (diff) | |
download | git-c37f9a1bc38cad56c9eca40014802e7cd822c21c.tar.gz git-c37f9a1bc38cad56c9eca40014802e7cd822c21c.tar.xz |
Merge branch 'da/user-useconfigonly'
The "user.useConfigOnly" configuration variable can be used to
force the user to always set user.email & user.name configuration
variables, serving as a reminder for those who work on multiple
projects and do not want to put these in their $HOME/.gitconfig.
* da/user-useconfigonly:
ident: add user.useConfigOnly boolean for when ident shouldn't be guessed
fmt_ident: refactor strictness checks
Diffstat (limited to 't')
-rwxr-xr-x | t/t7517-per-repo-email.sh | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/t/t7517-per-repo-email.sh b/t/t7517-per-repo-email.sh new file mode 100755 index 000000000..337e6e30c --- /dev/null +++ b/t/t7517-per-repo-email.sh @@ -0,0 +1,39 @@ +#!/bin/sh +# +# Copyright (c) 2016 Dan Aloni +# Copyright (c) 2016 Jeff King +# + +test_description='per-repo forced setting of email address' + +. ./test-lib.sh + +test_expect_success 'setup a likely user.useConfigOnly use case' ' + # we want to make sure a reflog is written, since that needs + # a non-strict ident. So be sure we have an actual commit. + test_commit foo && + + sane_unset GIT_AUTHOR_NAME GIT_AUTHOR_EMAIL && + sane_unset GIT_COMMITTER_NAME GIT_COMMITTER_EMAIL && + git config user.name "test" && + git config --global user.useConfigOnly true +' + +test_expect_success 'fails committing if clone email is not set' ' + test_must_fail git commit --allow-empty -m msg +' + +test_expect_success 'fails committing if clone email is not set, but EMAIL set' ' + test_must_fail env EMAIL=test@fail.com git commit --allow-empty -m msg +' + +test_expect_success 'succeeds committing if clone email is set' ' + test_config user.email "test@ok.com" && + git commit --allow-empty -m msg +' + +test_expect_success 'succeeds cloning if global email is not set' ' + git clone . clone +' + +test_done |