2016-06-10 3 views
0

В настоящее время я работаю над двумя различными подпроектами. До сих пор у меня было два разных меркуриальных хранилища для каждого. Я хотел бы сохранить два объекта sub_projects в одном репозитории, но тогда мне все же хотелось бы работать над двумя sub_projects одновременно и отдельно, без необходимости фиксировать изменения обоих подпроектов в одном коммите. Мои два подпроекта полностью независимы. Я хотел бы иметь возможность фиксировать и просматривать историю каждого из подпроектов самостоятельно.наилучшая практика для сохранения двух разных кодов в одном ртутном хранилище

Мне было интересно, что является лучшей практикой в ​​этом случае. Я хотел бы сохранить два подпроекта в одном репо, так как это облегчит доставку клиенту.

Большое спасибо заранее за вашу помощь,

ответ

1

Если это два несвязанных код базы, то моя рекомендация состоит в том, чтобы НЕ объединить их в один - он не будет делать обработку проще.

Однако, если вы настроены на создание общей базы кода, то есть разные стратегии:

а) Просто объединить их в одном хранилище, потянув один проект в другой. Это требует, чтобы в двух репозиториях не было файлов с одинаковым именем. В качестве альтернативы используйте расширение convert либо для размещения их на отдельных путях, либо для преобразования преобразованных репозиториев в один. Вам придется позаботиться о том, чтобы вы совершали коммиты, чтобы вы касались только файлов одного проекта за раз.

b) Использовать подпроекты. Наилучший выбор для отдельных подпроектов - использование удлинения ртути subrepository; рекомендуется использовать неглубокий родительский репозиторий, из которых два подпроекта являются именно такими: субрепозиториями. Имейте в виду внимательно прочитать документацию по расширению субрепозиторов - это называется «особенностью последней инстанции» по тем причинам, что у нее есть свои грубые края. Однако вы можете совершать отдельные подпроекты отдельно, не касаясь другого, и создавать общее состояние проектов, совершая фиксацию в родительском репо, в котором записывается состояние подпроектов.

Есть также похожие альтернативные расширения, такие как guest repo и аналогичные - возможно, они подходят для вашего прецедента лучше.