2016-05-30 3 views
0

Я использую git как свой инструмент управления версиями. У меня есть файл local.properties в моем удаленном репозитории. Каждый член команды должен иметь этот файл, но git должен игнорировать этот файл только с точки зрения изменений, а не из-за существования. Я попытался добавить этот файл в файл .gitignore (тот, который находится в корневом каталоге), но похоже, что git игнорирует этот запрос ... так как я (или любой другой член команды) все еще могу зафиксировать и вносить изменения в этот файл.Как игнорировать существующий файл в git repo?

Что мне не хватает?

Благодаря

+0

Вы можете делиться содержимым файла gitignore? постскриптум извините за уведомление о нижнем уровне, это был случайный щелчок, чтобы его сбалансировать! – dubes

+0

Это стандартный файл .gitignore, который был создан с использованием плагина .ignore в IntelliJ (он длинный, поэтому я не хочу включать его здесь ...), а в конце файла есть эта строка:/tests/src /test/resources/application.properties - Этот файл находится в корневой папке (корень проекта) – Noam

+0

Одним из возможных решений является «git reset HEAD - local.properties» в режиме «pre-commit». Как только крюк будет развернут, local.properties никогда не будет зафиксирован, даже если он добавлен. – ElpieKay

ответ

2

У вас не хватает, что мерзавец игнорировать механизм работает только для неотслеживаемых файлов, и вы также всегда можете заставить файл быть добавлен с -f, даже если он игнорировал. Вы не можете игнорировать изменения в файле без следа. Вы можете прочитать о --ignore-untracked, но это должно быть никогда не использовать, если вы не специалист Git. Переименуйте свой зарегистрированный файл в local.properties.sample и попросите своих разработчиков скопировать и адаптировать его к local.properties, который затем находится в .gitignore.

+0

Спасибо за разъяснение - я пропустил это! Но дело в том, что я не хочу, чтобы остальные разработчики вручную создали этот файл, возможно ли это? – Noam

+1

Как я уже сказал, вы не можете заставить Git игнорировать изменения в отслеживаемом файле безопасным способом. Если вы хотите, чтобы файл был проигнорирован, вам нужно отменить его (удалить из репо). Вы можете добавить в свое использование файла, что он ищет 'local.properties', и если он не существует, то скопируйте' local.properties.sample' в 'local.properties' автоматически. Таким образом, отдельному разработчику не нужно копировать файл вручную, если ему не нужны изменения. – Vampire