Git cvsimport пропустил добавочные изменения в ветке - PullRequest
2 голосов
/ 25 марта 2011

Мы используем git-cvsimport для периодического копирования изменений из cvs в git

К лучшему или худшему, мы придерживаемся git cvsimport, а не cvs2svn. Изначально мы планировали «раз и навсегда» миграцию cvs в git, но в итоге люди стали выполнять дополнительную работу с репозиторием cvs. Мы хотим перенести изменения из ветки CVS в git, чтобы разработчики могли работать с этой функцией в git.

Context

  • У нас есть специальный git-репозиторий fromcvs, используемый исключительно для импорта из cvs
  • Назначенный «разработчик слияния» сливается из этого репозитория fromcvs в свой локальный
  • Я периодически выполняю эту команду, чтобы вносить изменения из CVS в git git-cvsimport -p -x -v -d $ CVSROOT myProj

Вопрос

Почему в "git-версии" ветки FEATURE-FOO отсутствуют коммиты, которые я вижу в версии CVS для этой ветки?

Например, в cvs я вижу в ветке FEATURE-FOO изменение, внесенное в SomeDAO.java 11 февраля в пт.

git checkout FEATURE-FOO git log src / java / com / company / somefeature / SomeDAO.java

  • Это ошибка в gitcvsimport?
  • или мы ошибаемся на шаг (см. Ниже), чтобы сохранить
  • Какие-нибудь еще жемчужины мудрости?

Как вы интерпретируете предупреждение на man-странице импорта git cvs?

Еще одна вещь: на странице руководства git-cvsimport есть это предупреждение (я разбил его на маркеры для разборчивости).

Что конкретно это означает "После этого вам нужно выполнить git merge, добавочный импорт или любой CVS ветви, сами. "

  1. Вы никогда не должны выполнять какую-либо собственную работу над ветвями, которые созданный git cvsimport.

  2. По умолчанию при первоначальном импорте создается и заполняется «основная» ветка. из основной ветки хранилища CVS с которым вы можете свободно работать;

  3. После этого вам нужно выполнить git merge, добавочный импорт или любой CVS. ветви, сами.

  4. Желательно указать именованный удаленный канал через -r для разделения и защиты. входящие филиалы.

Git cvsimport действительно работал для нас до сих пор, несмотря на предупреждения через Интернет. (то есть "... ни один человек не должен путешествовать один в Клондайке после пятидесяти ниже"). Возможно, я / мы глупо проигнорировали этот совет и впали в ложное чувство безопасности.

Есть рекомендации?

спасибо

будет

1 Ответ

0 голосов
/ 25 марта 2011

У вас проблемы, потому что git-cvsimport принципиально не работает. Например, см. Раздел «проблемы» на странице руководства .

...