2009-04-23 1 views
0

Я планирую передать LLVM на новый целевой процессор. Это первый случай, когда я пытаюсь внести изменения в массивный проект. Какова наилучшая практика для такого.Отслеживание магистрали или использование определенной ветви

Если я придерживаюсь версии 2.5 сборки, у меня есть базовый уровень для создания моих модификаций. Однако я могу потерять новые возможности и исправления ошибок. Если я отслеживаю багажник, это может создать проблемы, так как это край кровотечения. Это может привести к нестабильности и/или ошибкам.

С некоторыми портами GCC, например, они имеют тенденцию развиваться в определенном месте и строить свои модификации оттуда. Они, похоже, не сливаются обратно в основную линию и не выпускают свои версии самостоятельно. В то время как другие, объединить свои изменения в основную линию, но они могут не поддерживать ее так усердно, что заставляет ее сломаться в какой-то момент в будущем.

Я ищу несколько советов о том, как лучше всего действовать.

ответ

0

Это вопрос контроля версий?

Если это так, рекомендуемая рекомендация - взять ветку из известной точки, а затем регулярно объединять изменения, которые были сделаны в багажнике, в вашу ветку. когда вы закончите, ваша ветка очень легко сливается обратно в багажник (фактически, в этот момент она должна быть такой же, как и багажник).

Если багажник получает изменения края кровотечения, то они должны быть сделаны самим ветви.

Если вы не можете вносить эти изменения, то вы лучше всего соединяете багажник с вашей веткой регулярно, как прежде, но, заботясь о том, что вы сливаете, не беспокойтесь о том, чтобы взять все, вы можете оставить некоторые вещи для позже (просто будьте осторожны, когда вы делаете окончательное слияние, чтобы убедиться, что вы внесли все изменения - сделайте разницу между туловищем и вашей финализированной ветвью в этой точке).

+0

Что я вижу с некоторыми другими компаниями-процессорами, так это то, что они порт только для определенного терминала. Они не отслеживают основную линию. – sybreon