[英]Migrate TFVC to Git - Should History be migrated?
我希望從 TFVC 遷移到 TFS Git。
我注意到微軟建議:
...沒有詳細說明為什么不推薦它。
供參考:我們的代碼庫已有約 9 年歷史,由 2 個主要項目組成,約 82k 文件和約 400k 行代碼,以及約 90k 文件和約 500k 行代碼
最終發現這提供了一些信息: https://docs.microsoft.com/en-us/devops/develop/git/migrate-from-tfvc-to-git
在嘗試使用 Git-TFS 進行遷移之前,請注意 TFVC 和 Git 存儲歷史記錄的方式之間存在根本差異:
- Git 將歷史記錄及時存儲為存儲庫的快照,而 TFVC 記錄文件上發生的離散操作。 Git 不能表示 TFVC 中的更改類型,如重命名、取消刪除和回滾。 它不會看到文件 A 被重命名為文件 B,它只會跟蹤文件 A 被刪除並且文件 B 被添加到同一個提交中。
- Git 沒有 TFVC label 的直接模擬。 標簽可以包含任何特定版本的任意數量的文件,並且可以反映不同版本的文件。 雖然概念上相似,但 Git 標簽指向整個存儲庫在某個時間點的快照。 如果項目依賴 TFVC 標簽來了解交付的內容,則 Git 標簽可能不會提供此信息。
- TFVC 中的合並發生在文件級別,而不是整個存儲庫。 只有更改文件的子集可以從一個分支合並到另一個分支。 然后可以將剩余的更改文件合並到后續更改集中。 在 Git 中,合並會影響整個存儲庫,並且不能將兩組單獨的更改視為合並。
由於這些差異,建議用戶進行提示遷移並保持其 TFVC 存儲庫在線,但為只讀,以便查看歷史記錄。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.