Игнорировать изменения в файле в Git, не удаляя его из репо? - PullRequest
3 голосов
/ 25 октября 2011

Это ситуация: у нас есть несколько файлов конфигурации, и когда пользователь клонирует репо, ожидается, что они изменят эти файлы конфигурации. Сами файлы структурированы так, чтобы сделать это быстро, просто и легко - но это означает, что любой пользователь, выполняющий команду «git add *» или «git commit -a», в конечном итоге отправляет их обратно на сервер с уже внесенными изменениями!

Мало того, что это сломает вещи для следующего человека в следующий раз, когда он тянет (ему придется каждый раз сливаться и обрабатывать конфликты для файла, который ему даже не нужен), это означает, что пользователь может очень легко случайно сломать у нас началось непрерывное интеграционное тестирование.

Что мне нужно, так это эффект git ignore (ему все равно, будет ли он изменен, он не будет его фиксировать), но без необходимости полного удаления файла. Было бы неплохо, если бы мы могли как-то принудительно изменить файл.

Я знаю, что в SVN есть способы сделать это, я полагаю, что у Git должен быть эквивалент.

Ответы [ 2 ]

6 голосов
/ 25 октября 2011
git update-index --assume-unchanged <filename>

(на самом деле это предназначено для другой цели - для повышения производительности операций git на неоптимальной файловой системе, посредством чего вы можете дать команду git предположить, что некоторые файлы не затрагиваются. Вы можете использовать его для "временно""игнорировать отслеживаемые файлы)

Вы также можете посмотреть альтернативные способы, которыми люди обрабатывают файлы конфигурации, например, иметь файл конфигурации шаблона, из которого пользователи создают свой конкретный файл конфигурации (последний игнорируется) и т. д.

0 голосов
/ 24 января 2013

Я бы сделал configfile.template, с configfile, перечисленным в .gitignore, и README или другой совет при копировании и настройке. Установите все, что является целью указанного configfile, чтобы сделать что-то разумное (встроенный configfile.template эквивалент?), Если конфигурация не сохранилась (вам все равно понадобится что-то подобное, так что ...).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...