Как иметь две версии файла, что бы 1 видел git, а другую сервер?
Видимо клинит меня.
Есть файл, допустим config.php и мне надо что бы он в репе был один, а у меня другой. Но при этом хотелось бы иметь данные, если он измениться в репе.
Я понимаю, что было бы логично разделить файл и то что может поменяться иметь в 1, а локальные переменные в другом, но тут так сложилось не получится. Есть варианты? Или я много хочу?
Не уверен что сработает, но попробуй:
в одном месте - 2 разных файла foo и bar
в другом - файл foo и линк на него же с именем bar
ну и что-то там прописать в .gitignore )
Так как описано - не выйдет, при пуле изменений с репы файла который локально тоже изменён, будет конфликт вида 'сначала закоммитьте изменения'
Только разделением на config.local.php.example и config.local.php который будет под гит игнором
Если суть в том чтобы мерджились какие-то конфиги, то будет хорошим решением сделать два файла, подключать оба, один будет с настройками с гита, другой будет с локальными, и локальные будут переопределять гитовские
проект не мой и там таких файлов куча. Я что бы завести на своем окружении, много что поправил. Поэтому теперь думаю как это теперь залить. С одной стороны можно в gitignor все внести. но получится, что потом хз как быть если там что-то изменят в этих файлах. Я не уверен, что сотрудничество будет долгим, так что не хотел структуру переделывать или еще какие-либо трудозатраты делать. Хотелось видимо "чуда" ))) Но видимо, не судьба. Была надежда, что я дурак не знаю очевидного решения
В твоем случае есть прекрасная штука - environment variables. Добавляешь .env файл в проект, в конфиге ссылаешься на его переменные и игноришь .env .gitignore'ом. Так делать правильно.