Intereting Posts
Крючок, чтобы сделать Subversion доступным только для определенных пользователей Как предотвратить недоразумение файла, если ключевые слова контроля версий запрещены? Программная настройка svn: внешние в удаленном репозитории JIRA / FishEye Smart Commit Назначение исправлений версий Узнайте, какой пользователь неправильно разрешает конфликты слияния? Если возможно автоматическое форматирование кода до и после фиксации исходного кода, проверки, разности и т. Д., Компании действительно нужен стандартный стиль кода? svn checkout на окнах Как сбросить весь репозиторий Git, а не только филиал «Мастер», чтобы соответствовать Remote? TortiseSVN через LAN? SVN: список файлов, предназначенных для пересмотра Как сохранить номер версии SVN автоматически после каждой фиксации? Значок SVN / GIT для успешной сборки Как ограничить N новых записей с помощью Hg Log при указании Revset? Subversion – как я могу управлять доступом пользователей к одному репозиторию при использовании SVNParentPath? Как работать с SVN в Netbeans на Debian?

git reference common directory / repo

Макет проекта:

/project_a /shared /project_b /shared /shared 

project_a и project_b должны содержать общую папку. С svn мы использовали svn: externals и отлично работали, поскольку svn может ссылаться на поддиры (с относительными путями тоже). Однако мы перешли на git и, похоже, не поддерживали проверку поддиректоров.

Наше решение теперь состоит в том, чтобы поместить project_a, project_b и поделить все в разных git-репозиториях, и использовать git-подмодули в project_a и project_b. Однако это кажется намного более сложным, чем одно монолитное svn-репо с svn: externals. Каков правильный способ обработки общих элементов в git?

EDIT: Консенсус – это подходы. Но, используя его в течение дня, кажется очень недружелюбным в использовании.

После внесения изменений в файл в совместно используемом я должен:

  1. Зафиксировать изменения в общих
  2. Нажмите на изменение доли
  3. Добавьте общий каталог снова в родительский каталог
  4. Нажмите родительский каталог

По сравнению с одной транзакцией в svn это кажется более сложным. И отсутствие одного из этих шагов приводит к огромному беспорядку версий. Я что-то упустил?

Solutions Collecting From Web of "git reference common directory / repo"

Правильный ответ – субмодули.

Тот факт, что вы не сохраняете монолитный подход SVN, в значительной степени зависит от дизайна с DVCS (где вы отмечаете и ссылаетесь на репозиторий как на все ).

Это позволяет вам ссылаться на точную конфигурацию (см. Истинную природу подмодулей ), то есть вы всегда будете ссылаться на точную ссылку SHA1 (в отличие от svn external , где вы не обязаны указывать номер версии).