Очень часто в любом проекте есть хотя бы один файл конфигурации. Каждый раз, когда я делюсь проектом с git
, у меня такая же проблема с:
- конфиденциальной информацией (у каждого разработчика разные пароли к БД и т. Д.)
- конкретной информацией о задаче (когда разработчик работает над определенной задачей, где нужно изменить некоторые настройки)
Очевидно, что конфиги нужно как-то игнорировать, чтобы не допустить наводнения данных разработчика в основном репозитории. Теперь есть несколько способов, которые я использовал, каждый с некоторыми недостатками:
.gitignore
конфигурационные файлы
- самый простой способ
- , когда разработчик клонирует репозиторий, конфигурационный файл отсутствует, и нужно выяснить, где конфиги были воссозданы
- конфигурационный файл не игнорируется. Он содержит фиктивную информацию, и каждый разработчик либо отключает отслеживание, и помещает ее в свой
.git / info / exclude
, либо устанавливает git update-index --assume-unchanged ...
в файл
- файлы доступны для всех, кто клонирует репо.
- он содержит продвинутые методы, которые могут сбить с толку людей, впервые работающих с git
- , когда кто-то случайно фиксирует файлы конфигурации, это не позволяет людям извлекать / fetch (поскольку исключения не работают так же, как
.gitignore
)
- распространяют файлы конфигурации с суффиксом, например,
_original
, имея при этом реальные файлы в . gitignore
. Затем каждый разработчик переименовывает файлы в настоящие имена.
- файлы доступны для всех, кто клонирует репо
- , нужно искать все конфиги по всему приложению и переименовывать их
Есть ли другие, возможно, лучшие способы справиться с этим? Я подозреваю, что что-то упустил, по крайней мере, какой-то плагин.
задан Ondrej Slinták 21 July 2011 в 20:02
поделиться