proton 23.03.2013 15:11 laptop

Часто в проектах бывают файлы, необходимое для работы проекта, но изменяемые в процессе его работы/на конкретной системе.
К примеру конфиги, или бд в sqlite с изначально забитыми данными.
Очень удобно было бы держать их в системе контроля версий, но возникает проблема с тем, что держать нужно не текущую используемую версию, а самую первую.
Можно, конечно, не добавлять их в индекс при отправке изменений, но это некрасиво.
Ещё один вариант — держать их копии в виде файл.example, и добавить код, автоматически копирующий эти файлы при их отсутствии, но это тоже не всегда возможно, да и не всегда красиво.
А как решаете данную проблему вы?

1. lexszero 23.03.2013 15:29 nyapad

юзаю бранч, в котором храню локальные изменения в конфигах/етц, который каждый пулл ребейзю.

2. ceyt 23.03.2013 15:49 ayttm

Сделай как дяди: читай из default.cfg и config.cfg, пиши в config.cfg, храни только стандартный файл. Инициализацию базы или конфига можно в программе с нуля делать, логично будет при наличии функции сброса или поддержке нескольких профилей. Если для запуска программы предполагается наличие сложной иерархии тяжёлых файлов, её можно вынести в репозиторий поддержки (либо инсталлятора, при его наличии). И, само собой, никто не мешает тестировать в параллельной копии локального репозитория.

Do you really want to delete ?