Subject: Re: Status of all files (was: Re: How can I tell if a file is ignored by git?

From: [email-masked] (Randal L. Schwartz)
Date: Fri, 09 Apr 2010 05:11:12 -0700

>>>>> "Eric" == Eric Raymond <[email-masked]> writes:

Eric> There could be something better.  Emacs VC mode, and other similar
Eric> front ends, would be greatly aided by a command that lists all files,
Eric> each with a status code it can understand.  Our canonical list
Eric> (omitting two that apply only to locking systems) is:

A lot of these don't make sense for git and other DVCS.  How have
hg and bzr interpreted these "canonical" states?

For example:

Eric>   'needs-update      The file has not been edited by the user, but there is
Eric>                      a more recent version on the current branch stored
Eric>                      in the master file.

This makes sense only with a file-based VCS, not a tree-based VCS like
git.

Eric>   'needs-merge       The file has been edited by the user, and there is also
Eric>                      a more recent version on the current branch stored in
Eric>                      the master file.  This state can only occur if locking
Eric>                      is not used for the file.

Ditto.

Eric>   'removed           Scheduled to be deleted from the repository
Eric>   on next commit.

Not useful in git.

Eric>   'missing           The file is not present in the file system, but the VC
Eric>                      system still tracks it.

Not available in git.  (If it's not a real file, it can't be tracked. :)

Eric>   'ignored           The file showed up in a dir-status listing with a flag
Eric>                      indicating the version-control system is ignoring it,

Eric>   'unregistered      The file is not under version control.

These two would be identical in git.

-- 
Randal L. Schwartz - Stonehenge Consulting Services, Inc. - +1 503 777 0095
<[email-masked]> <URL:http://www.stonehenge.com/merlyn/>
Smalltalk/Perl/Unix consulting, Technical writing, Comedy, etc. etc.
See http://methodsandmessages.vox.com/ for Smalltalk and Seaside discussion