* git diff --name-status for deleted files
@ 2017-09-14 22:11 Gene Thomas
2017-09-15 2:57 ` Junio C Hamano
0 siblings, 1 reply; 4+ messages in thread
From: Gene Thomas @ 2017-09-14 22:11 UTC (permalink / raw)
To: git@vger.kernel.org
Hello,
"git diff -name-status" is useful to list the files one has changed but it does not list file that one has deleted with "git rm". It would be really handy if it did. I am using git 2.9.3 on Ubuntu Linux 16.10.
Yours Sincerely,
Gene Thomas.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: git diff --name-status for deleted files
2017-09-14 22:11 git diff --name-status for deleted files Gene Thomas
@ 2017-09-15 2:57 ` Junio C Hamano
2017-09-15 5:18 ` Gene Thomas
0 siblings, 1 reply; 4+ messages in thread
From: Junio C Hamano @ 2017-09-15 2:57 UTC (permalink / raw)
To: Gene Thomas; +Cc: git@vger.kernel.org
Gene Thomas <gene@nlc.co.nz> writes:
> Hello,
> "git diff -name-status" is useful to list the files one
> has changed but it does not list file that one has
> deleted with "git rm". It would be really handy if it
> did. I am using git 2.9.3 on Ubuntu Linux 16.10.
With or without --name-status option, "git diff" compares between
the contents you have in the index and in your working tree. After
you modify contents of a file, i.e.
edit file
git add file
you would not see that file edited exactly because the file on the
filesystem is identical to what you added to the index with "git
add".
Your example works exactly the same way. Instead of modifying the
contents of a file, removing the presense of the file and recording
that fact to the index (i.e. removing the path from the index, too)
is done with "git rm", so after running
git rm file
your working tree would lack "file" and so would your index. Hence
you wouldn't see "git diff" report any difference on "file".
Perhaps you wanted "git diff HEAD", which is a way to compare
between the contents you have in the tip commit and the paths in
your working tree thru the index?
^ permalink raw reply [flat|nested] 4+ messages in thread
* RE: git diff --name-status for deleted files
2017-09-15 2:57 ` Junio C Hamano
@ 2017-09-15 5:18 ` Gene Thomas
2017-09-15 5:47 ` Junio C Hamano
0 siblings, 1 reply; 4+ messages in thread
From: Gene Thomas @ 2017-09-15 5:18 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git@vger.kernel.org
Junio,
Thanks for your reply. So git is essentially doing a "git commit" when I "git rm".
Gene.
-----Original Message-----
From: Junio C Hamano [mailto:gitster@pobox.com]
Sent: Friday, 15 September 2017 2:58 PM
To: Gene Thomas <gene@nlc.co.nz>
Cc: git@vger.kernel.org
Subject: Re: git diff --name-status for deleted files
Gene Thomas <gene@nlc.co.nz> writes:
> Hello,
> "git diff -name-status" is useful to list the files one
> has changed but it does not list file that one has
> deleted with "git rm". It would be really handy if it
> did. I am using git 2.9.3 on Ubuntu Linux 16.10.
With or without --name-status option, "git diff" compares between the contents you have in the index and in your working tree. After you modify contents of a file, i.e.
edit file
git add file
you would not see that file edited exactly because the file on the filesystem is identical to what you added to the index with "git add".
Your example works exactly the same way. Instead of modifying the contents of a file, removing the presense of the file and recording that fact to the index (i.e. removing the path from the index, too) is done with "git rm", so after running
git rm file
your working tree would lack "file" and so would your index. Hence you wouldn't see "git diff" report any difference on "file".
Perhaps you wanted "git diff HEAD", which is a way to compare between the contents you have in the tip commit and the paths in your working tree thru the index?
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: git diff --name-status for deleted files
2017-09-15 5:18 ` Gene Thomas
@ 2017-09-15 5:47 ` Junio C Hamano
0 siblings, 0 replies; 4+ messages in thread
From: Junio C Hamano @ 2017-09-15 5:47 UTC (permalink / raw)
To: Gene Thomas; +Cc: git@vger.kernel.org
Gene Thomas <gene@nlc.co.nz> writes:
> Junio,
> Thanks for your reply. So git is essentially doing a
> "git commit" when I "git rm".
No. You'd probably need to read a bit more on Git; unlike other
systems like CVS and SVN, where you only have two states
(i.e. committed contents vs files on the filesystem), we have three
states (i.e. the index in addition to the above two).
"git add file" and "git rm file" make the index match what's on the
filesystem wrt "file". They never touch committed contents, which
"git commit" command is about.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2017-09-15 5:48 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-09-14 22:11 git diff --name-status for deleted files Gene Thomas
2017-09-15 2:57 ` Junio C Hamano
2017-09-15 5:18 ` Gene Thomas
2017-09-15 5:47 ` Junio C Hamano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox