Обновление существующего депо Perforce для использования GitSwarm

Моя компания развернула версию Perforce 2014.X (сервер и клиент). У нас есть существующее депо Peforce.

Они изучают возможность обновления до 2015.X, также известного как Helix. Одной из функций является лучшая интеграция с Git, называемая "GitSwarm", которая использует внешний интерфейс GitLab, интегрированный с Perforce.

Я просмотрел документацию в Интернете, но я не нашел ответов на эти вопросы:

У меня есть несколько вопросов:

  1. Можно ли получить доступ к моему существующему хранилищу потоков, с его полной историей, через GitSwarm после завершения обновления, или нам нужно каким-то образом создать или перенести его в новое хранилище?

  2. Если первое возможно, я предполагаю из документации Git Fusion/Connector, что мы сможем создать Git-репо только на основе одного потока? То есть, от GitSwarm будет доступен только один поток?

  3. И наконец, если я создам ветку объектов на стороне GitSwarm и отправлю ее в хранилище потока Perforce для слияния, как будет выглядеть ветка git в Perforce? Как новый поток? Или есть только ветка? По сути, нужно ли объединять ветку git с основным отображаемым потоком на стороне git? или мы можем свободно слиться обратно в Perforce или Git?

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

1 ответ

Решение

1) Да, полная история потока доступна со стороны Git. Одна из проблем, связанных с использованием GitSwarm с потоками, заключается в том, что представление потока нельзя изменить после клонирования git-репо. Git не может понять семантику основного потока или следовать перемещенному контенту.

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

Строки импорта из потока будут преобразованы в подмодули в Git.

2) исправить; Каждое репо указывает на одно потоковое депо. Вы можете создать несколько репозиториев, каждый из которых направлен на разные потоки. При желании отдельные потоки в каждом поточном хранилище могут быть сопоставлены с ветвями в Git. В общем, ваш основной поток должен соответствовать мастеру в вашем репозитории Git.

3) Ветви Git хранятся в упрощенном формате, поэтому, хотя эти изменения попадают на сервер Helix, они не будут видны как отдельные потоки. Вы можете явно отобразить долгосрочные ветви в Git на потоки в Helix, используя файлы конфигурации репозитория. Если вы сопоставляете потоки с вашими долгоживущими ветвями в Git, вы можете объединиться в Git или Helix.

Другие вопросы по тегам