Git: Объединить ветку, но без некоторых файлов, которые мне нужно изменить только локально? - PullRequest
2 голосов
/ 14 марта 2012

У меня есть этот конкретный сценарий, который на самом деле прост, но я не вижу (пока) подобного вопроса здесь.

Я работаю в своей собственной ветке, скопированной из удаленного репозитория, ИЯ добавил свои собственные задачи в Capistrano Capfile .Эти задачи помогут Мне развернуть приложение на моем собственном частном сервере, поэтому, когда пришло время объединить мою ветку с origin master , я не хочу, чтобы изменения в Capfile передавались на удаленное мастер репо , потому что, очевидно, этот файл должен оставаться там без изменений, без моих личных изменений.

Как лучше всего справляться с этой ситуацией?

Заранее спасибо!

PS.Я думаю, что то, что я ищу, это способ ' Git Ignore ' файлы исключительно для ветки.Чтобы упростить вещи.

Ответы [ 2 ]

3 голосов
/ 14 марта 2012

Я бы предложил разветвить ветку now (давайте назовем ее Local) из вашей текущей ветки (назовем ее Original).

В Original вы вернете сделанные вами измененияв файл.В Local вы продолжаете работать с вашими данными как обычно.Прежде чем он снова появится в пульте, вы объедините Local в Original и просто нажмете Original.Если вы больше не изменяете локальный Capfile, все будет в порядке, в противном случае вам придется (снова) отменить эти изменения (хотя это в любом случае может привести к конфликту слияния, чтобы вы могли обработать его непосредственно при слиянии).

1 голос
/ 14 марта 2012

См. Нижнюю часть следующей страницы: https://git -scm.com / book / en / v2 / Customizing-Git-Git-Attributes # _merge_strategies .

Это описывает, каквы можете установить различные стратегии слияния с атрибутами git.В этом случае вы всегда хотите, чтобы главная версия вашего файла capistrano была ответственной, а не та, что в вашей ветке, например,

capistrano.file merge=ours

Наша ссылка относится к «нашей версии файла» относительно ветви, которую вывключены при выполнении слияния.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...