我正在使用git-tfs桥来攻击客户的本地TFS服务器。昨天他们将他们的安装迁移到新版本+更改了服务器的URL,将所有历史记录和工作项迁移到新实例。
有没有办法将我现有的git存储库重新映射到新的默认遥控器?
我尝试手动编辑 [tfs-remote“默认”] 的 url 属性,使其指向新地址并运行每一个{{1}命令。但是,在 fetch 尝试中,有一个引导过程,将旧的 tfs-remote 添加到配置文件中。
答案 0 :(得分:3)
您有2个解决方案:
first,更容易,但我不知道它是否有效(它应该......)因为git-tfs自实施以来已经发展了很多。
其次,这肯定会有效,是更新从旧TFS获取的最后一个变更集的元数据,并且当{{1}中找不到任何变量集时,git-tfs使用它来引导新的tfs-remote文件。
修改git提交并替换元数据中的url(看起来像这样:gitconfig
)以指向新的TFS。
创建原始git-tfs-id: [https://tfs.codeplex.com:443/tfs/TFS16]$/vtccds/trunk;C26497
文件的备份:
.git/config
删除cp .git/config .git/config.bak
文件中的所有[tfs-remote]
设置。
从命令行中执行正常的.git/config
。
答案 1 :(得分:0)
感谢Philippe的回答...我要补充一点,如果您使用多个分支,则需要为每个分支更新配置条目并添加
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接受这些分支的签入。