Вы могли записать универсальный Pair< A, B> класс и использование это в массиве или списке. Да, необходимо записать класс, но можно снова использовать тот же класс для всех типов, таким образом, только необходимо сделать это однажды.
Мои выводы состоят в том, что если вы используете 2-е разумное решение ниже, необходимо сначала сделать - зеркало , потому что он вытирает эти CVS / ветви, которые вы пытаетесь нажать. Таким образом, полная формула:
git push --mirror -v github
git push --force github cvs/master:refs/heads/cvs/HEAD
for x in `git branch -r | grep '^..cvs/[a-zA-Z0-9_-]*$' | sed -e 's/^..//'` ; do
git push -v github $x:refs/heads/$x
git config branch.$x.remote github
git config branch.$x.merge refs/heads/$x
done
Думаю, вы ищем опцию - mirror
, чтобы нажать:
git push --mirror github
Это подтолкнет все ссылки (ветки и теги), включая обновления без быстрой перемотки вперед. Я использую это для создания резервных копий моего локального репозитория.
На странице руководства это описывается следующим образом:
Вместо того, чтобы указывать каждую ссылку для отправки, указывает, что все ссылки в
$ GIT_DIR / refs /
(который включает, но не ограничивается,refs / Heads /
,refs / remotes /
иrefs / tags /
) зеркально отображать на удаленный репозиторий. Вновь созданные локальные ссылки будут отправлены на удаленный конец, локально обновленные ссылки будут принудительно обновлены на удаленном конце, а удаленные ссылки будут удалены с удаленного конца. Это значение по умолчанию, если задана опция конфигурацииудаленный. <Удаленный>. Зеркало
.
[OT: Я использую CDT в повседневной работе, и мне это нравится!]
Поэкспериментировав, я не верю, что есть встроенная поддержка того, что я хочу делать.
Однако есть два разумных решения:
Изначально я хотел, чтобы ветки cvsimport d были разделены для размещения имен. Однако с первым вариантом имеет смысл полностью отделить репозиторий cvsimport (и только клонировать его). После этого я могу продолжить отслеживание CVS без риска испортить репозиторий отслеживания git.