2014-09-23 2 views
0

У нас есть установка TFS 2013 с проектами, которые мы хотим перенести на GIT. Для истории управления версиями мы приземлились на GIT TFS и опцию --with-branches, которая доставит нас всех. Но у нас есть еще несколько вопросов:Использование TFS 2013 с существующим сервером GIT и возможность связывания рабочих элементов

  1. Возможно ли связать TFS 2013 с другим сервером GIT - организация имеет установленный GIT-сервер, который является предпочтительным.
  2. Как мы можем связать рабочие элементы с # соглашением, я предполагаю, что может потребоваться post-hook или что-то еще.
  3. Будет ли возможность переноса всех ссылок в TFS из WorkItems на набор изменений, чтобы теперь указать на фиксацию в репозитории GIT?

Первые два являются самыми важными. В-третьих, мы можем жить, если не думаю, что нам не нужно удалять репозиторий, если это не будет сделано автоматически, если мы сможем связать другой сервер GIT с проектом TFS.

ответ

0

Не могли бы вы рассказать нам, что вы планируете делать после перенаправления ваших источников на git? Лучшее описание того, что вы планируете делать ... Вы все еще говорите о TFS? Вы говорите о TFS-VC (все еще используете его) или TFS-Git (хотите полностью перенести)?

я все равно постараюсь ответить на ваши вопросы ...

  1. Нет, вы не можете. С TFS единственной абсолютно необходимой частью является контроль источника. Итак, если вы хотите использовать любую другую функцию TFS (кроме ALM), вы ДОЛЖНЫ использовать свой источник управления. Но если вы планируете использовать TFS (Git), вы можете синхронизировать историю git с другим сервером. Поскольку вы не можете подключить источник TFS к другому серверу git, потому что TFS не использует простой старый каталог .git, но сохраняет все git blob в своей базе данных

  2. TFS (VC) или TFS (Git)? Если вы используете TFS (Git) или git-tfs до checkin in TFS(VC), нет проблем с использованием # конвенции ... В противном случае я не понимаю, чего вы хотите ...

  3. Не уверен, что вы хотите снова ... возможно, вы должны были использовать опцию --export в команде git tfs clone. Таким образом, все сообщения с рабочими элементами будут добавлены в сообщение фиксации.

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

+0

Мы пытаемся отказаться от TFS для управления версиями все вместе, но использовать остальную часть материал ALM. На самом деле, мы действительно не хотим использовать встроенный GIT-сервер в TFS, так как уже существует установленный сервер GIT. Для исторических связей между рабочими элементами и источником мы могли бы просто оставить все как есть. Но, продвигаясь вперед, нам бы хотелось, чтобы мы могли совершить этот другой GIT-сервер и использовать # ассоциации, и он будет связан. Возможно, мы сможем сделать почтовый прием для GIT на одном сервере, нажимая все это на другое. Но это оставляет нам миграцию данных. У нас есть тонны. – EinarI

+1

Вы не можете связать рабочий элемент с тем, что TFS не знает (фиксация на другом сервере). Вы могли бы: 1) Создать проект TFS (Git) и синхронизировать этот репозиторий git с вашим «официальным» репозиторием git, а рабочие элементы будут автоматически связаны (упростить решение и получить бесплатную резервную копию!) 2) Создать крюк на вашем официальном сервере и используйте tfs api для изменения комментария рабочего элемента, чтобы добавить commit sha1 (более сложное решение) – Philippe