Thread (10 messages) flat view 10 messages, 4 authors, 2016-06-15

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help