¿El path actual es importante para algunas operaciones de git?

Diga, tengo mi git repo (la carpeta .git ) ubicada en ~/my_project/ . Supongamos también que la carpeta de mi proyecto está ensamblada así:

 my_project | |____src | |__com | |__org 

Por último, supongamos que me gustaría organizar la carpeta com para commit. Puedo hacerlo en al less dos forms:

  • albus@hogwarts:~/my_project$ git add src/com
  • albus@hogwarts:~/my_project/src$ git add com

¿Habría alguna diferencia entre las dos invocaciones? ¿Qué tal git format-patch o git am ? ¿Dependen de la ruta actual?

La gente puede reírse de mi pregunta, pero la verdad es que un colega mío dijo que tenían problemas para aplicar algunos parches, es decir, tenían que aplicarlos desde diferentes directorys en la ruta del proyecto. También me recomendaron que debería hacer todos los commands de git desde la carpeta del proyecto más my_project (es decir, my_project en este ejemplo). Nunca pensé que pudiera haber algo de verdad en esto, pero no soy un experto donde git entra en escena y, por lo tanto, lo estoy preguntando aquí.

¡Gracias!

git format-patch crea el mismo parche donde quiera que ejecute el command. Lo único que cambia es donde se genera el file de parche.

Pero los diferentes commands se comportan de manera diferente, lo que también depende de los indicadores aplicados a ellos.

Por ejemplo, git diff tiene el indicador --relative :

–relativo [= <path> ]

Cuando se ejecuta desde un subdirectory del proyecto, se le puede decir que excluya los cambios fuera del directory y muestre los nombres de ruta relacionados con esta opción. Cuando no está en un subdirectory (por ejemplo, en un repository vacío), puede nombrar qué subdirectory hará que la salida sea relativa dando un argumento como.