我目前正在尝试将 SVN 存储库迁移到 TFS(特别是 visualstudio.com)。我环顾四周,发现最便宜和最简单的选择是通过 GIT,如本文所述。
过程进展顺利,我使用 GIT SVN 在本地构建 GIT 存储库,并设法将一半以上的更改集提交到 TFS,但是当我收到以下错误时它停止了:
git-tf:项目'解决方案/模式对象/可编程性/存储过程/dbo.product_recommendation_insert.proc.sql'在提交9fbd60d中不止一次存在不同的大小写。TFS 不支持在同一路径中具有不同案例的相同项目。
虽然这并不理想,但我真的不需要保留该文件的提交历史并跳过它会完全没问题。
所以我想出了一个解决方案(如果有更好的选择忽略下一位),那就是使用 GIT filter-branch 从历史中删除它。我运行了以下命令:
git filter-branch --tree-filter 'rm -f ''solution\Schema Objects\Programmability\Stored Procedures\dbo.Product_recommendation_insert.proc.sql''' HEAD
运行良好,但现在我不确定我需要做什么才能完成对 TFS 的提交。当我重新运行签入时,我收到以下错误
git-tf:已获取最新更改(提交 968e8a0),但尚未合并/重新定位到 master 中。请将最新的更改合并/重新设置为 master
所以我的问题是:我是否通过使用 filter-branch 做正确的事情?如果是这样,我需要做什么才能将“合并/变基”到master?