git поддерево отправляет изменения обратно в проект поддерева

Кратко о том, что ниже:Я хочу отправлять сообщения фиксации в поддерево, но только те сообщения, которые относятся к этому дереву. Как мне это сделать?


У меня есть два проекта, Masterи Slave. Slaveизвлекается как поддерево Masterизвлекается в lib/slaveчерез git subtree merge --prefix=lib/slave --squash projects/slave, где projects/slave— ветвь, которая Slaveизвлекается в:

Ветки:

master проекты/slave → slave

Сейчас работаю над своей веткой master, делаю коммиты в файлы, которые являются частью обоих проектов, все идет гладко. Теперь я хочу отправить изменения обратно вSlave:

  • git checkout slave
  • git merge ??? master

Если я выполняю обычное слияние, я получаю коммиты для каждой фиксации в master, независимо от того, были ли изменены какие-либо файлы в lib/slave. Или я могу сделать --squashи получить только одну фиксацию, но я потеряю сообщения журнала.

Итак, как мне получить соответствующие сообщения журнала? например. если моя masterистория журнала:

  • добавленные изображения в мастер
  • измененные файлы только в ведомом
  • дополнительные изменения только в ведущем
  • измененные файлы в ведущем и подчиненном

я бы хотел, чтобы это было добавлено вSlave:

  • измененные файлы только в подчиненном устройстве
  • измененные файлы в главном и подчиненном устройстве
11
задан Mark Kahn 12 April 2012 в 20:49
поделиться