On Wed, Nov 22, 2017 at 09:37:09AM -0600, Nathan Neulinger wrote: > What I'm meaning is - why does it need to write the index back out to disk? > > From looking at the code in builtin/commit.c it looks like it takes a lock > on the index, collects the status, and then unconditionally rewrites the > index file. > Hmm, I just took a look at those lines and I see what you mean. From what I understand, this is to cache the result of the index computation for ensuing git calls. > I'm proposing that the update_index_if_able call not actually be issued if > it would result in a ownership change on the underlying file - such as a > simple case of root user or other privileged account issuing 'git status' in > a directory. I don't think this would be a desire-able default behavior. I'd wager that running git status using different accounts is not a great idea --- specially interacting with a user repository as root. > I understand completely that it would be expected to be altered if the > privileged user did a commit/add or any other operation that was inherently > a 'write' operation, but doesn't seem like status should be one of those > cases. I think it's because of the reasons above. That being said, I don't know what the rest of the community would think of something akin to a --no-update-index type flag. Cheers! -Santiago.
Attachment:
signature.asc
Description: PGP signature