Re: `git commit` with the `--author` option

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hey,

On 2022-01-14 at 20:24:58, Glen Peterson wrote:
> Thank you for git!  I use it hourly.  It is orders of magnitude better
> than vcs, cvs, subversion, clearquest, sourcesafe, and a number of
> others I have used, but can't remember right now.

I'm glad you're happy with it.  We always like to hear good news.

> I was excited to see the `--author` option on the `git commit`
> command, thinking that I could use it to set arbitrary authors for git
> commits.  Reading the docs, I expected to use it to, "Specify an
> explicit author using the standard A U Thor _author@example.com_
> format."
> 
> It seems from stackoverflow and this list that git won't do that
> unless you have an author specified in your config somewhere (`git
> config user.email` and `git config user.name`)?  Links to sources
> available on request (your system rejected my first email).
> 
> Does the email you set in the `--author` option have to match the one
> in your config, or can you set it to anything once you have a random
> user.email in your config?  Is this option just for choosing between
> pre-configured emails?

The --author option does set the author, and it should contain a
personal name and email in the typical format.  It can contain any entry
you want, whether or not it's set in the config, provided it meets the
syntax requirement.

> I think this option would be much more useful if it worked without
> also setting your git config.

Creating a commit also requires that you specify a committer.  Since
there's no option for that, you'll need to either have it come from the
config, or use the GIT_COMMITTER_NAME and GIT_COMMITTER_EMAIL
environment variables to specify the committer information.  There are
similar GIT_AUTHOR_NAME and GIT_AUTHOR_EMAIL, which are useful to set if
you're working in a script.

You can also use the -c option to specify that config, like so:

  git -c committer.name="Pat Doe" -c committer.email="doe@xxxxxxxxxxx" commit

There are even more ways you can get this information, and the
git-commit(1) manual page outlines them in detail.  If you think that
documentation is lacking, please let us know, and I'll try to get an
improvement in when I next get a chance.

I agree that a --committer option would also be a nice improvement here,
though, since this seems to be a thing people want, especially for
scripting.  If there are other use cases you're thinking of that aren't
scripting related or that we haven't considered, please share more, and
we'll see if we can accommodate them.
-- 
brian m. carlson (he/him or they/them)
Toronto, Ontario, CA

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux