Publicando esto aquí en SO y no en webapps StackExchange porque sé que pertenece a git
, pero no estoy seguro si también involucra a GitHub
.
Digamos que tengo un repo foo
en mi máquina en /home/user/foo
, que es mi directory de trabajo actual, y tengo un file en el repository: /home/user/foo/main.sh
.
Estoy trabajando en la twig master
(aunque no estoy seguro de que importe en qué twig estoy) y realizo algunos cambios en main.sh
Quiero ver los cambios que realicé solo en este file, así que ingresé:
$ git diff ma<tab>
¿Por qué se autocompleta para master
lugar de main.sh
? En realidad, de manera más razonable, no creo que deba completarse automáticamente porque solo con las 2 letras ma
, es ambiguo. Miré la descripción en la página man de git diff
, pero no veo nada sobre uno que tenga prioridad sobre el otro.
La página man para git-diff contiene esto:
git diff [–options] [-] [ruta …]
Entonces, si buscas git diff para un file / ruta, se supone que debe seguir --
(guiones dobles). Encontrarás que si haces git diff -- ma<tab>
, se completará automáticamente con un nombre de file, en lugar de una bifurcación.
git diff $branch git diff -- $filePath