美文网首页
转换TFS到Git

转换TFS到Git

作者: 灭蒙鸟 | 来源:发表于2017-07-11 08:59 被阅读165次

    公司以前一直用TFS,管理源代码, 但是TFS开分支代价巨大, 需要复制整个源代码,非常的不方便, 而目前的开发方式越来越倾向于开很多分支,按需合并到主版本库. 使用TFS虽然可以实现一样的目的, 但是动辄几百M的分支(甚至几个G),导致不愿意开更多的branch.
    而且目前很多CI工具对Git的支持明显更好.所以决定把TFS改为Git.
    TFS的代码移动到Git很容易, 但是那些changeset怎么办?
    下面是使用一个小工具,来把TFS上说有的版本变更信息转移到Git上.

    1. 首先下载一个git-tf工具(https://gittf.codeplex.com/), 按照网页上的说明配置好.(注意:需要安装java runtime)
    2. 使用下面的命令下载TFS的代码到一个目录, 注意要是用--deep命令,以便把所有的checkin信息拿下来
    git-tf clone https://myaccount.visualstudio.com/DefaultCollection $/MyBigProject/MyMainBranch --deep
    

    注意 $前面有空格 $开头的是TFS源代码所在路径

    1. 移除掉所有的*.vssscc文件
    2. 用编辑器(非VS)打开.sln文件, 移除 GlobalSection(TeamFoundationVersionControl)这一节
    3. 添加.gitignore和.gitattributes文件, 建议直接用VS创建一个git项目,然后从里面把这两个文件复制过来
    git add .
    git commit -a -m "initial commit after conversion"
    
    1. 增加ReadMe.MD文件(可加可不加)
    2. 把对应的代码checkin到git上
    git push --mirror https://xxx(git地址)
    

    现在回到git,你会看到所有的代码和历史信息都在里面

    相关文章

      网友评论

          本文标题:转换TFS到Git

          本文链接:https://www.haomeiwen.com/subject/wrbyhxtx.html