Re: Bug#757297: 'git status' output is confusing after 'git add -N'
From: Junio C Hamano <hidden>
Date: 2016-06-15 23:02:10
Duy Nguyen [off-list ref] writes:
On Thu, Aug 7, 2014 at 7:34 AM, Jonathan Nieder [off-list ref] wrote:quoted
Package: git Version: 1:2.0.0-1 Tags: upstream $ git init foo Initialized empty Git repository in /tmp/t/foo/.git/ $ cd foo $ echo hi >README $ git add -N README $ git status On branch master Initial commit Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: README Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: README If I then run "git commit", it does not actually commit the addition of the README file.We used to reject such a commit operation before 3f6d56d (commit: ignore intent-to-add entries instead of refusing - 2012-02-07) so it was harder to misunderstand this case.quoted
It would be clearer to have a separate section,like so: Tracked files not to be committed: (use "git rm --cached <file>..." to stop tracking) new file: READMEOr make the "Changes not staged for commit" part say "new file: README" ("modified" is implied)
Yeah, after reading the justification in the quoted commit, I agree that it is status that is at fault in the above; "new file: README" is part of "Changes not staged for commit" in this case (it is told to the index, but the user never said it is "for commit" yet, which is the whole point of "-N"), so instead of adding a new section, I agree that it should be classified as "new file" not "modified" there.