Subject: Re: Why doesn't git commit -a track new files

From: Michael J Gruber <[email-masked]>
Date: Thu, 24 Feb 2011 16:02:15 +0100

Marco venit, vidit, dixit 24.02.2011 11:22:
> Hi,
> 
> I'm new to git and a bit confused about how some commands work.
> 
> git add .                    -- Adds everything *but* deleted files
> git add -A                   -- Adds everything
> git commit -a -m "whatever"  -- Commits everything *but* new files
> 
> I don't understand why there's not switch (is there?) for commit to commit new
> and deleted files, like -A for git add? Is the only thing to do this sth like
> 
> git add -A && git commit -m "Message"

"commit -a" is much like "add -u", at least when used without file
arguments ("pathspec").

"commit -A" does not exist, so that "git add -A && git commit" is your
only way.

Why does it not exist? Because you should at least
"git add -A && git status && behappy && git commit".

The middle part of that line could be done in the editor which commit
invokes, of course.

>>From the technical side: git-add and git-commit share surprsingly little
code (the "add" part of commit is not shared). So, implementing it
wouldn't simply be a different "add call" from commit.

Also, "-A" supports a very "un-gitty" way of using git. This makes it
unlikely that someone cares to implement it... (By "un-gitty" I don't
mean a matter of personal taste, but a matter of fruitful habits.)

Michael