Re: GIT - breaking backward compatibility
From: Brian Gerst <hidden>
Date: 2016-06-15 22:42:06
Junio C Hamano wrote:
I raised the following issues in my previous messages but did not hear many opinions [*1*]. I do not want to take it as a blank check from the community to do whatever I please. So here is a recap. * Tools renaming plan calls for removal of the backward compatible command names (e.g. git-fsck-cache and git-update-cache) sometime in the future. This is scheduled for 0.99.8 around beginning of October. If somebody wants extended amnesty period, this can be pushed back but unless I hear otherwise... * After reviewing the current set of commands, the following do not seem to be useful anymore; Linus said he feels they can go, and nobody else objected: git-diff-helper git-diff-stages git-export git-rev-tree I'd like to remove them before 1.0, and planning to do it within the 0.99.8 timeframe unless I hear otherwise. * After Brian Gerst posted a patch to show 'modified' files in ls-files [*2*], there was a brief discussion to change the tagged output markings to make them more readable, but neither Cogito nor StGIT seems to use tagged output. I am currently thinking about removing '-t' altogether. Again, unless I hear otherwise, I'd like to remove it within the 0.99.8 timeframe. BTW, independent from any of these I'll be doing a 0.99.7a soonish for "fixes only" on top of 0.99.7. [Footnote] *1* Well, Pasky indicated he does not like some of the terms in the glossary in his recent Cogito release announcement, but that was unfortunately after the fact. *2* I haven't taken this patch not because I do not think showing 'modified' file is a bad idea but because showing cache dirty files as 'modified' did not feel right to me. I think doing what 'git-update-index --refresh' does without actually refreshing the cache status bits would be the right way to go.
Essentially what I want to do is: git-ls-files --others | xargs git-update-index --add -- git-ls-files --deleted | xargs git-update-index --remove -- git-ls-files --modified | xargs git-update-index -- This will completely resync the index and cache to the working tree state after applying a patch. git-update-index --refresh only updates the stat info in the index. It does _not_ write a new cache object if the file contents have actually changed. Cogito would benefit from this too. It currently uses git-diff-index and some ugly sed expressions in cg-commit to detect modified files. If your objection is to calling the files modifed, then call it dirty or something else. -- Brian Gerst