Re: cygwin, 44k files: how to commit only index?
- From
Shawn Pearce <spearce@spearce.org>
- Date
- Dec 7, 2006, 20:29 UTC
- Message-ID
- <20061207202931.GB12502@spearce.org>
- In-Reply-To
- <7vhcw7scln.fsf@assigned-by-dhcp.cox.net>
Junio C Hamano <junkio@cox.net> wrote:
Show 10 quoted lines
> Shawn Pearce <spearce@spearce.org> writes: > > >> I am not sure what you are trying. Do you mean stat() is slow > >> on your filesystem? > >> > >> Maybe you want "assume unchanged"? > > > > Yes, basically. > > Then maybe "git grep assume.unchanged" would help?
Hmm. OK, maybe I should have answered "No"" to your first question. I keep looking at the assume unchanaged feature of update-index, but refuse to use it because I'm a lazy guy who will forget to tell the index a file has been modified. Consequently I'm going to miss a change during a commit.
What may help (and without using assume unchanged) is:
* skip the `update-index --refresh` part of git-status/git-commit * skip the status template in COMMIT_MSG when using the editor
As Git will still at least make sure a `commit -a` includes everything that is dirty.
Files whose modification dates may have been messed with (but whose content are unchanged) will just go through expensive SHA1 computation to arrive at the same value, which is fine.
Users skipping the first part are doing so under the assumption that their modification dates are usually always correct, and that then they aren't the SHA1 computation of a handful of files is cheap compared to stat'ing the entire set of files.
Users skipping the second part are doing so under the assumption that knowing the names of the files they are committing doesn't really improve their odds of writing a good commit message.