Commit without setting user.email and user.name
(This occurred to me after suggesting the long version with the environment variables—git commit wants to set both an author and a committer, and --author
only overrides the former.)
All git commands take -c
arguments before the action verb to set temporary configuration data, so that's the perfect place for this:
git -c user.name='Paul Draper' -c user.email='[email protected]' commit -m '...'
So in this case -c
is part of the git
command, not the commit
subcommand.
You can edit the .git/config
file in your repo to add the following alias :
[alias]
paulcommit = -c user.name='Paul Draper' -c user.email='[email protected]' commit
or you can do this by command line :
git config alias.paulcommit "-c user.name='Paul Draper' -c user.email='[email protected]' commit"
And then you can do :
git paulcommit -m "..."
Remarks:
- The idea is then to add also aliases like
jeancommit
,georgecommit
, ... for the other users of this shared box. - You can add this alias to your global config by editing your personal
.gitconfig
or by adding--global
option to the command line when adding the alias. - The alias
paulcommit
is not a short one, but it is verbose and you can in general type onlygit pau
+tab.