Cómo mantener una versión de un file corregida en github

Quiero upload un proyecto a GitHub, pero uno de los files fuente del proyecto no debe cambiarse, es decir, la primera versión de GitHub debe permanecer igual, independientemente de las modificaciones que los desarrolladores realicen en sus versiones de files locales. ¿Alguien se da count cómo hacer eso?

Opción 1: ignorarlo localmente

Una vez que haya agregado un file, git lo .gitignore , incluso si está en .gitignore . Puede hacer cosas localmente para asegurarse de que no lo cometerá accidentalmente, como

 git update-index --assume-unchanged path/to/file.txt 

Sin embargo, debe asegurarse de que todos sus queueboradores también lo hagan, lo cual es difícil.

Opción 2: hacer una plantilla

En cambio, creo que una mejor estrategia es hacer una "plantilla" que las personas puedan usar para comenzar su file a menudo cambiante.

Por ejemplo, digamos que el file es un file de configuration, local.conf . Este file contiene cosas como passwords y directorys que son específicos de una máquina, por lo que no le gustaría agregar esas cosas a un repository. Pero, para tener un file local.conf válido, necesita conocer la estructura de ese file.

En lugar de local.conf y dejar que las personas lo cambien, local.conf.template un file de plantilla local.conf.template . Agregue local.conf a .gitignore , para que el local.conf de todos nunca se comprometa. Luego, en su README , instruya a sus queueboradores a hacer

 cp local.conf.template local.conf 

y edítalo desde allí.