Народ, чё-т я не вкуриваю, объясните.
У меня в #git есть ветка master, которая синхронизируется с сервером. И есть ветка local, чисто локальная.
Я хочу, чтобы в master один конкретный файл игнорировался, а в local -- нет. Суть проблемы в том, что при добавлении того файла в .gitignore, он удаляется во время перехода local -> master (логично).
Пробовал выносить файлик за пределы репозитория и хранить в репе только symlink, в pre-commit hook ставить удаление файла (т.е. симлинка), а в post-commit повторное создание симлинка. Но чё-то как-то костыльно выглядит.
Есть соображения?
@groosha Ты кстати не пояснил зачем оно тебе надо, я чувствую более фундаментальную проблему тут
@sunchaser суть вот в чём: я пишу бота для телеги, там авторизация через обычную учётку. Библиотека, которую я использую, хранит сессии в файлах .session.
Я пушу код в приватный репозиторий в своей gitea, но для перестраховки хотел в ветке master игнорировать эти файлы, а в ветке 'dev', наоборот, трекать и пушить (чтобы синхронизировать файлик между компами). А в конце, когда закончу писать код, ветку dev удалю, а master останется со всеми коммитами и без тех файликов.
Потом возникла мысль вообще не пушить ветку 'dev' (обозвав её 'local', как в примере выше), оставить её локальной, но с этими файликами.
@groosha тогда коммить только в мастер, а dev/local ребейсь на нее при запусках. Запускай только из dev/local. Но этот геморрой будет ценен, если тебе реально надо зачем-то синхронизировать файл. Скопировать его 1 раз точно не хватит?
@groosha файл в игноре можно всегда добавить явно через git add -f, кроме того если файл уже трекается, он будет трекаться и дальше даже если он попадает под маску .gitignore