2015-09-23 2 views
2

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

Есть два типа вещей, что IDE записывает в файл проекта:

  1. Важные вещи: то есть списки файлов и модулей, что грим проект
  2. Лишний материал: то есть диалог IDE коробка X, установки положения Y

Поскольку у IDE нет понятия о разделении лишнего материала на файлы настроек пользователя, мы ведем u р с слиянием конфликтов всего времени

Вопрос: Предоставляет ли мерзавец точку расширения (крюк), который позволяет мне игнорировать лишних когда наполнять избирательные урны фальшивых бюллетеней пользователя сливаясь определенным типом файла? Моя цель состоит в том, чтобы по умолчанию использовать стратегию слияния типа «их/мины» для избыточного материала, в то время как слияние Важно так же, как всегда.

ответ

2

Вы можете использовать, стратегию при слиянии

git merge --strategy-option theirs # or ours 

Зачем вам нужен крючок для этого? Если вы хотите сделать это для какого-нибудь каталога или файл только при слиянии вы можете использовать -

git checkout --theirs path/to/the/conflicted_file.php 

Насколько я знаю, нет никакого предварительного слияния крючка обеспечивается мерзавцем. Если вы используете rebase вместо merge, вы можете использовать крюк pre-rebase. Вы можете попробовать использовать крючок prepare-commit-msg. Второй аргумент будет слиянием, если коммит является слиянием или существует файл .git/MERGE_MSG.

prepare-commit-msg documentation

+0

Я не уверен, что это то, чего я хочу. Используя ваш метод, я верю, что это произойдет, если бы он автоматически принимал все сверхплотные вещи как «свои» (хорошие), но также использовал свою версию изменений в «Важном материале» (плохая), даже если действительно существует конфликт слиянием которые необходимо решить. Моя цель - автоматическое слияние с использованием 'theirs' только для избыточного материала, а не для важного материала. Ты знаешь, что я имею в виду? – ThaDon

+0

Как вы идентифицируете лишний материал? – hspandher

+0

Я имею в виду, что вы подразумеваете под «лишним материалом». Как вы ожидаете, что git будет дифференцироваться? – hspandher

Смежные вопросы