Изменить пульт по умолчанию для репозитория git-tfs
Я работаю против локального TFS-сервера клиента, используя мост git-tfs. Вчера они перенесли свою установку на новую версию + изменили URL сервера, перенеся всю историю и рабочие элементы в новый экземпляр.
Есть ли способ переназначить мой существующий репозиторий git на новый пульт по умолчанию?
Я попытался вручную отредактировать свойство url [tfs-remote "default"], чтобы оно указывало на новый адрес и запускало все возможные cleanup*
команда. Тем не менее, при попытке извлечения происходит процесс начальной загрузки, добавляющий новый tfs-remote со старым URL в файл конфигурации.
1 ответ
У вас есть 2 решения:
Во- первых, тем проще, но я не знаю, работает ли он больше (должен...), потому что git-tfs сильно развился с момента его реализации.
Во-вторых, это наверняка сработает, это обновление метаданных последнего набора изменений, извлеченного из старого TFS, которое используется git-tfs для начальной загрузки нового tfs-remote, когда ни один не найден в gitconfig
файл.
Просто измените git commit и замените URL в метаданных (что-то похожее на это: git-tfs-id: [https://tfs.codeplex.com:443/tfs/TFS16]$/vtccds/trunk;C26497
), чтобы указать на новый TFS. Удалить все удаленные данные в gitconfig
файл, как вы сделали, и пусть git-tfs загрузит пульт на новый сервер...
Спасибо Филиппу за его ответ... Я бы добавил, что если вы работаете с ветвями severl, вам необходимо обновить запись конфигурации для каждой ветви и добавить
legacy-urls = http://old-url:8080/tfs/Projects
для каждого, как
[tfs-remote "Project/branch/..."]
url = http://newurl:8080/tfs/Projects
repository = ....
legacy-urls = http://old-url:8080/tfs/Projects
Это позволит git-tfs принять регистрацию этих веток.