zoukankan      html  css  js  c++  java
  • git 使用 VisualStudio 比较分支更改

    有时候需要比较两个分支的不同,这时如果提交到 github ,那么默认就可以看到。但是这时因为没有ide的高亮或者其他的功能,看起来觉得不好

    默认的 VisualStudio 比较文件比 github 的用起来好很多,那么如何使用 VisualStudio 作为代码比较?

    尝试打开一下 VS ,随意进行对比两个文件。需要找到一个工具,这个工具放在 TeamFoundation 文件夹里,我这里是 VisualStudio 2017 于是我的路径是C:Program Files (x86)Microsoft Visual Studio2017EnterpriseCommon7IDECommonExtensionsMicrosoftTeamFoundationTeam ExplorervsDiffMerge.exe 可以打开自己的文件夹进行搜索,找到这个软件。

    然后从 cmd 打开,输入下面的代码

    vsDiffMerge.exe 文件1 文件2
    

    就可以看到,软件从 VisualStudio 进行对比

    如果使用的是 Powershell ,那么可以输入 cmd 进入命令行

    可以看到对比文件很好用,那么在 git 使用的默认比较分支是git difftool dev release 就可以比较两个分支,但是如何使用 vs 进行比较?

    使用的方法实际上只需要修改一个文件

    打开 .git 的 config 在文件最后加入下面的代码

    [diff]
        tool = vsdiffmerge
    [difftool]
          prompt = true
    [difftool "vsdiffmerge"]
          cmd = "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\vsDiffMerge.exe" "$LOCAL" "$REMOTE" //t
          keepbackup = false
          trustexistcode = true
    [merge]
          tool = vsdiffmerge
    [mergetool]
          prompt = true
    [mergetool "vsdiffmerge"]
          cmd = "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\vsDiffMerge.exe" "$LOCAL" "$REMOTE" //t //m
          keepbackup = false
          trustexistcode = true
    

    其中的文件路径需要使用自己安装的。

    如果找不到文件,可以使用在仓库的git的命令行输入下面代码

    git config --global difftool.visualstudio.cmd "'C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/Common7/IDE/CommonExtensions/Microsoft/TeamFoundation/Team Explorer/vsdiffmerge.exe' $LOCAL $REMOTE Source Target //ignorespace //t"
    
    git config --global mergetool.visualstudio.cmd "'C:/Program Files (x86)/Microsoft Visual Studio/2017/Enterprise/Common7/IDE/CommonExtensions/Microsoft/TeamFoundation/Team Explorer/vsdiffmerge.exe' $LOCAL $REMOTE $BASE $MERGED //ignorespace //m"  
    git config --global mergetool.visualstudio.trustExitCode true
    
    git config --global diff.tool visualstudio  
    git config --global merge.tool visualstudio 
    

    需要修改自己的文件所在,一般可以搜索找到。

    忽略对比的文件夹

    如果在 git 提交中,存在某个文件都是资源,在对比中,不停需要去看这些文件,感觉想把git卸了。但是git那么厉害,是不是有一个方法可以做到,忽略某个文件夹的更改。是的,下面我来告诉大家如何忽略这个文件夹。

    例如需要忽略的文件是 c:codedx esource 项目所在文件夹是c:codedx,dx就是我的名字,所以项目是假的。

    使用 git 输入下面的命令就可以忽略 resource 文件夹

    git difftool relase dev -- . ':!resource'
    
    

    这个命令需要注意,-- . ':!要忽略的文件夹' 除了中文,其它的都是需要添加的

    我搭建了自己的博客 https://lindexi.gitee.io/ 欢迎大家访问,里面有很多新的博客。只有在我看到博客写成熟之后才会放在csdn或博客园,但是一旦发布了就不再更新

    如果在博客看到有任何不懂的,欢迎交流,我搭建了 dotnet 职业技术学院 欢迎大家加入

    知识共享许可协议
    本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接:http://blog.csdn.net/lindexi_gd ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我联系

  • 相关阅读:
    Java实现第九届蓝桥杯螺旋折线
    Java实现第九届蓝桥杯递增三元组
    强大的Mockito测试框架
    搭建eclipse环境下 Nutch+Mysql 二次开发环境
    mysql操作查询结果case when then else end用法举例
    查看mysql数据库及表编码格式
    mysql如何更改character-set-server默认为latin1
    (原创)Linux下MySQL 5.5/5.6的修改字符集编码为UTF8(彻底解决中文乱码问题)
    Ubuntu14连接MySql报错“can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock'”
    inux下设置mysql数据库字符集utf8
  • 原文地址:https://www.cnblogs.com/lindexi/p/8970475.html
Copyright © 2011-2022 走看看