git: ignorando un file que * es * versión controlada

Un file .gitignore permite ignorar files de la versión que los controla en absoluto.

Tenemos una situación diferente: queremos colocar en el repository algunos files de configuration, que deben cambiarse por máquina (por ejemplo, información de acceso a db).

Queremos distribuirlos, como marcadores de position, para que los incluyamos en el repository. Sin embargo, más adelante queremos que se ignoren todos los cambios que se hagan, para todos los desarrolladores.

¿Hay una manera de hacerlo?

Nota:

La pregunta Git: ignorar files controlados por la versión es en realidad la misma. Sin embargo, ninguna de las respuestas respondió a la pregunta, incluida la aceptada.

Editar:

  • ¿Hay alguna manera de hacerlo, no cambiar a un patrón en lugar de un solo file?
  • ¿Hay alguna forma de propagar este command a los repositorys de otros desarrolladores?

.gitconfig los siguientes alias en mi file .gitconfig :

 [alias] ignore = update-index --assume-unchanged unignore = update-index --no-assume-unchanged 

Eso debería hacer exactamente lo que usted quiere: ejecutar git ignore some-file , tratará el file como sin cambios, sin importar lo que haga, hasta que ejecute git unignore some-file .

Sé que esto evita el problema, pero me gustaría tener un file ".defaults" para cada uno, y luego cambiar esto. De todos modos, esto ayuda con la energía de configuration. ¿Qué sucede si alguien que tiene una configuration personalizada desea cambiar los valores pnetworkingeterminados?

No ignore los .defaults, ignore lo real. Tal vez tenga un script que copie los valores pnetworkingeterminados a los regulares si aún no existen.