2015-07-20 2 views
1

Я новичок в git. В нашем проекте мы планируем перейти от Rational Team Concert к git.RTC to GIT migration

У нас есть 2 основных направления:

  • Dev
  • Пост-релиз

И у нас есть около 30 релизов сделано.

Наш план zip/tar ball исходный код (с обеих ветвей) и перенос его в GIT. Любые идеи или стратегия действительно оценены.

+0

_Any идеи или стратегия действительно оценены. - Возможно, это яснее для людей, которые делали миграции, но похоже, что у вас уже есть стратегия. С какой частью вам нужна помощь? – BSMP

ответ

0

Идея состоит в том, чтобы перебирать каждую базовую линию в локальном рабочем пространстве или изолированной области репо и использовать эту локальную папку в качестве источника для импорта источника в репозитории Git.

cd /path/to/git/repo 
git add --work-tree=/path/to/local/RTC/sandbox/aComponent add . 
git commit -m "release x" 
# change baseline in local workspace 

Я бы порекомендовал хранить один Git-репо за компонент RTC.

уточнение Что преимущества с «git add --work-tree=..» против нормального git add

Это позволяет исходному worktree (кодовая база импортируется) проживать другими: ваши тарболы могут быть чисто несжатыми в отдельном папки (которые не удаляют файлы из старого tarball, которые не удаляются при распаковке нового tarball в той же папке).

Если я буду импортировать из смолы, будут версии/история потоков сохраняется

No: каждый архив представляет собой поток базового уровня, снимок во времени, а не полный оригинал история от RTC.

+0

Примите ваше предложение здесь! , Наш исходный код упакован как tarball, и мы собираемся импортировать в GIT. Pls. clarfiy whats преимущество с «git add -work-tree = ..» против обычного git add, также Если я собираюсь импортировать из tar, будут ли версии/история потоков сохранены? – Goku

+0

@Vigs Я ответил на свой ответ – VonC

+0

Спасибо @VonC, хотел бы получить разъяснения по следующим вопросам: В нашем проекте мы сталкиваемся с сложной ситуацией, у нас есть наш офис в двух разных местах. мы создадим сервер GIT, скажем, в местоположении A и завершим миграцию кода @ A, а затем настроим точную настройку @ B и затем синхронизируем среду GIT от A до B. (зеркалирование от A до B и создание B как главного). Этот подход возможен? если да, во время процесса, какие меры предосторожности мы должны включать в себя как проблемы с разрешениями и т. д. (я понимаю, он не передает DVCS цель GIT, но все же, как знать) – Goku