git. Поддержка в актуальном состоянии файла на разных ветках
Есть две ветки: условный master и, скажем, branch2. Большая часть файлов в ветках различна: названия совпадают, содержание нет. В обоих ветвях есть файл README.md (на стадии написания), содержание которого нужно держать общим для двух ветвей. Предполагается работать с двумя ветками, постоянно внося в них изменения и держать README.md в актуальном состоянии. Как это реализовать? Вносить изменения на одной из ветвей, копировать содержание README.md и переключаться на другую кажется не лучшим решением
Ответы (2 шт):
Можно использовать cherry-pick
git checkout branch2
Редактируете ТОЛЬКО README.md и комитите только его
git commit -m "New edition of readme"
[branch2 463dc4f] New edition of readme
после переходите в мастер
git checkout master
git cherry-pick 463dc4f
Finished one cherry-pick.
[master]: created a0a41a9: "New edition of readme"
В мастер добавится только этот коммит. Дальше можете продолжать править branch2
Смысл файла README.md в том, что он отражает состояние текущей версии.
Когда вы переходите на другую ветку, то в ней нет тех изменений которые есть в ветке master. Лучшей стратегией будет писать в README.md актуальное относительно каждой ветки. А при слияние веток сольётся и содержимое README.md