Клонировать репозиторий TFVC (в GIT) с неповрежденными ссылками на рабочие элементы

Есть ли какой-либо инструмент, поддерживающий так называемые «упоминания идентификаторов» при клонировании репозитория TFVC в репозиторий Git? Я бы хотел, чтобы каждая фиксация в клонированном репозитории Git содержала упоминания идентификаторов связанных рабочих элементов.

Commit: hash... Message: A cloned commit, Related work item(s): #123456

До сих пор я пробовал git-tf (Microsoft) и git-tfs, и в каком-то смысле они оба сохраняют историю набора изменений нетронутой, но не через упоминания идентификатора, вместо этого они добавляют тег для каждой фиксации в набор изменений TFS. Затем я мог бы перейти на веб-портал TFS и найти набор изменений, где будут видны все рабочие элементы, но эта информация не будет доступна непосредственно внутри Visual Studio.

Начиная с обновления 1 для Visual Studio 2015 (?), Можно связать фиксацию с рабочим элементом с помощью упоминаний идентификаторов. Эта функциональность хорошо интегрирована в Visual Studio, и связывание рабочих элементов очень похоже на работу в TFVC. Кроме того, при просмотре истории в Visual Studio для репозитория TFS Git связанные рабочие элементы отображаются, если в текущей фиксации есть упоминание идентификатора.


person Emil G    schedule 15.09.2016    source источник


Ответы (1)


Не уверен, потому что я не помню, что я закодировал, но он должен работать с git-tfs и параметром --export ...

person Philippe    schedule 15.09.2016
comment
Привет! Спасибо за ответ. Я пробовал использовать git-tfs с параметром --export, и в результате каждая фиксация содержала раздел: git-tfs-id: http ... my-tfs-server / tfs $ / MyTfs / Path; C41234 . Этот идентификатор является идентификатором tfs-changeset, и его можно найти, например, в проводнике управления версиями, однако это не то, что мне нужно. Я хотел бы, чтобы все связанные рабочие элементы присутствовали как идентификаторы в сообщении фиксации. Это заставит Visual Studio установить связь между фиксацией и рабочими элементами в истории, чего я и хочу. - person Emil G; 16.09.2016
comment
Я попытался найти соответствующую часть функции создания сообщения фиксации в репозитории GitHub, но не смог. Можете ли вы указать мне правильное направление, возможно, я смогу реализовать эту функцию? - person Emil G; 03.10.2016
comment
Метод ProcessChangeset в файле GitTfsRemote.cs. Но, как я уже сказал, я вижу, что это уже сделано! - person Philippe; 03.10.2016
comment
Да, теперь я вижу код, он должен работать, как вы сказали. Я выясню, почему это не отображается в моих сообщениях о клонированных коммитах. Спасибо за помощь. - person Emil G; 03.10.2016
comment
Филипп: Сейчас я пробовал использовать другое репо, и, как вы сказали, при использовании опции --export экспорт будет указывать идентификатор. Я, должно быть, смотрел коммиты, в которых не было ссылки на рабочий элемент. Спасибо вам за помощь. Git-tfs с --export сделает свою работу! - person Emil G; 21.10.2016