2016-01-19 1 views
0

J'ai regardé les changements stat-seulement avec git. Les travaux suivants sur Ubuntu mais pas OS X:Pourquoi git-diff --raw sur OS X ne montre-t-il pas les changements de statistiques?

$ git init 
$ echo 123 > README 
$ git add . 
$ git commit -m 'Initial' 
[master (root-commit) f38a08f] Initial 
1 file changed, 1 insertion(+) 
create mode 100644 README 
$ touch README 
$ git -c 'diff.autorefreshindex=0' diff -- README 
$ git -c 'diff.autorefreshindex=0' diff --raw -- README 
:100644 100644 190a180... 0000000... M README 

Sous OS X, la commande git finale n'affiche aucune sortie. Pourquoi pas? J'utilise git v2.6.4 sous OS X 10.11.2 (et git 1.7.9.5 sous Ubuntu 12.04 LTS).

+0

sur OSX, faire 'ls -l README'; puis 'touchez README'; et encore 'ls -l README'. Est-ce que les sorties diffèrent? –

+0

oh et quelles sont vos versions git sur les deux machines? utilisez 'git --version' –

+0

Oui, les sorties diffèrent. Les versions de Git sont à la fin de ma question. –

Répondre

0

Cela ressemble plus à un bug dans git version 1.7.9.5. Si git diff ne montre rien; git diff --raw n'est pas censé non plus à mon avis. Dans le git documentation for version 1.7.9.5 il est dit:

M: modification du contenu ou le mode d'un fichier

, à mon avis; changer l'heure de modification (en utilisant touch) ne devrait pas apparaître dans git du tout ..

+0

J'obtiens le même manque de sortie avec git 2.7.0 sous OS X 10.11.2. Je regarde stat (accès au fichier/temps de modification) changements, pas de changements de mode. Les docs pour 'diff.autorefreshindex' indiquent que quand c'est faux, un changement de stat seulement compte comme un changement. –

+0

Il est étrange que vous obteniez encore la différence avec des versions git très similaires. Dans la doc: 'Notez que ceci ne concerne que la commande 'git diff' Porcelain, et pas les commandes 'diff' de niveau inférieur telles que 'git diff-files'. ' –

+0

trouvé ici: http://git-scm.com/docs/ diff-config –