簡體   English   中英

更改 git-tfs 存儲庫的默認遠程

[英]Change default remote for git-tfs repository

我正在使用 git-tfs 橋與客戶的本地 TFS 服務器進行工作。 昨天,他們將安裝遷移到新版本 + 更改了服務器的 URL,將所有歷史記錄和工作項遷移到新實例。

有沒有辦法將我現有的 git 存儲庫重新映射到新的默認遠程?

我嘗試手動編輯[tfs-remote "default"]url屬性,使其指向新地址並運行所有可能的cleanup*命令。 但是,在fetch嘗試中,有一個引導過程將帶有舊 URL 的新tfs-remote添加到配置文件中。

你有2個解決方案:

  • 一個,應該更容易。 但是,因為 git-tfs 自實施以來已經發展了很多,我不知道它是否仍然有效,即使它應該......

  • 其次,這肯定會起作用,是更新與從舊 TFS 獲取的最后一個變更集相對應的提交的元數據。 gitconfig文件中沒有找到時,git-tfs 使用它來引導新的 tfs-remote。

  1. 修改 git commit 並替換元數據中的 url(看起來像這樣: git-tfs-id: [https://tfs.codeplex.com:443/tfs/TFS16]$/vtccds/trunk;C26497 )指向到新的 TFS。

  2. 創建原始.git/config文件的備份:

     cp .git/config .git/config.bak
  3. 刪除.git/config文件中的所有[tfs-remote]設置。

  4. 只需從命令行執行正常的git tfs fetch

感謝 Philippe 的回答...我想補充一點,如果您使用 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 接受這些分支的簽入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM