Сведения о вопросе

SOON

16:03, 1st July, 2020

Теги

Различные распределенные системы управления версиями работают вместе

Просмотров: 403   Ответов: 4

В моем офисе есть центральный Source Safe 2005 install, который мы используем для управления версиями. Я не могу изменить то, что офис использует на сервере.

Я разрабатываю на ноутбуке и хотел бы иметь другой локальный репозиторий управления версиями, который может синхронизироваться с центральным сервером (когда он доступен) независимо от того, что это за центральный поставщик. Причина запроса заключается в том, что я могу поддерживать локальную стабильную ветвь/сборку для клиентских презентаций, продолжая развиваться, не перепрыгивая через пылающие обручи. Кроме того, как консультант, мои клиенты могут потребовать, чтобы я использовал их поставщика системы управления версиями, и гибкость здесь облегчила бы жизнь.

Может ли любой из существующих клиентов распределенного управления версиями справиться с этим?



  Сведения об ответе

PROGA

18:03, 1st July, 2020

Вы должны иметь возможность проверить текущую версию кода, а затем создать вокруг него репозиторий git. Обновление этого и фиксация его в локальном репозитории git должны быть безболезненными. Как и следовало ожидать.

Единственная загвоздка заключается в том, что вам нужно, чтобы они оба игнорировали друг друга (я сделал нечто подобное с SVN), возясь с соответствующими файлами ignore. Я предполагаю, что SourceSafe давайте вы будете игнорировать вещи. И вам нужно будет выполнить определенные операции дважды (например, сообщить обоим, что вы удаляете файл).


  Сведения об ответе

SEEYOU

18:03, 1st July, 2020

Что ж... KernelTrap имеет кое-что на этот счет . Похоже, что вы можете использовать vss2svn для передачи исходного безопасного РЕПО в репозиторий Subversion, а затем использовать очень хороший git-svn для подключения к локальному git РЕПО.

Я бы предположил, что фиксация обратно в VSS не будет гладким, автоматическим процессом, использующим этот метод.


  Сведения об ответе

PAGE

18:03, 1st July, 2020

Этот эпизод из книги HanselMinutes охватывает именно то, что я надеялся услышать. По-видимому, Git можно использовать локально, а затем присоединить к внешним репозиториям subversion/vss по мере необходимости. Они говорят об этом через 14 ~ 15 минут.


  Сведения об ответе

KOMP

18:03, 1st July, 2020

когда-нибудь я буду работать в компании, которая использует VSS (и в других компаниях, которые используют другие менее неизвестные SCM), но я предпочитаю использовать SVN (когда-нибудь я попробую GIT) для активного развития, для меня и моей группы.

Во-первых, в этой ситуации это только хорошая идея, если коммит на VSS мало в течение месяца, потому что работа с другими SCM (чем VSS) дает вам больше гибкости, но коммит на VSS из SVN стоит дорого во времени.

Мое решение было таково:

VSS - > SVN: у меня есть сценарий linux (или сценарий ant, или сценарий XXX), который копирует из каталога currrent update работу VSS в текущий SVN, затем обновляет клиент SVN и update/merge/commit в SVN. При этом вы получаете обновление от изменений rest компании, которая использует VSS.

SVN -> VSS: таким образом, вам нужно извлечь все ваши файлы modify в VSS, затем вы можете просто использовать обратный скрипт для копирования из текущего каталога update SVN (игнорировать каталоги .svn) и копирования в текущий каталог update VSS, обновления и фиксации.

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


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться