OSX Git结合Beyond Compare使用

自从转到iOS开发之后一直都是单枪匹马, 基本上不存在代码冲突问题, 最近来了个帮手,代码冲突是不可避免的, 之前做Linux开发的时候用Beyond Compare居多, OSX上没怎么用过,趁这个机会整理下,目的在于更直观的解决团队开发的时候出现的合并冲突.

Git

Xcode 集成了Git, 所以如果有安装了Xcode即可直接在终端中使用git 命令,查看git 版本信息

$git --version
git version 2.5.4 (Apple Git-61)

如果没有安装git 根据提示信息安装即可

Beyond Compare

官网上的版本目前是4.+版本,下载直接安装即可,传送门:Beyond Compare

配置

Beyond Compare设置

打开 Beyond Compare -> Beyond Compare Menu ->*** Install Command Line Tools***
必须要安装Beyond Compare 命令工具,否则会报错,类似:

The diff tool bc3 is not available as 'bcompare'
fatal: external diff died, stopping at plugins/PushPlugin.m

Git config

检查git的版本,根据版本的不同选不同的方法进行设置,本文是基于****Git 2.3+****版本操作,2.3以下的版本可以参考 Beyond Compare官网上的其他版本控制配置方法

Diff

切换到终端:

git config --global diff.tool bc3

当需要比较修改的时候,在终端中直接输入git difftool file.ext 就可以唤起****Beyond Compare****

Merge

切换到终端:

git config --global merge.tool bc3
git config --global mergetool.bc3 trustExitCode true

当代码发生冲突的时候,在终端中使用 git mergetool <conflict file> 即可唤起****Beyond Compare****,可谓是十分强大.随意感受一下

beyondCompareMerge

注意

在使用git megetool 来解决冲突后,会生成 备份文件 (*.orig),大多数情况下不是我们想要的,在终端中配置:

git config --global mergetool.keepBackup false

这样就不会每次在解决冲突后生成对应的 .orig文件了.

推荐阅读更多精彩内容

  • 本系列为《Git权威指南》的读书笔记,分为两个部分:Part 1 涵盖了书中第 1~3 篇共 20 章的内容,Pa...
    yestyle阅读 8,287评论 0 51
  • 在掌握了基础的 Git 使用 之后,可能会遇到一些问题。以下是猫哥筛选总结的部分常见问题,分享给各位朋友,掌握了这...
    猫哥学前班阅读 850评论 2 28
  • 声明:这篇文章来源于廖雪峰老师的官方网站,我仅仅是作为学习之用 Git简介 Git是什么? Git是目前世界上最先...
    横渡阅读 2,742评论 3 26
  • 面对这世间,面对社会,面对父母,面对老师,面对自己。时常问问自己,我在扮演什么角色,我应该怎么做。我不甘做一个平凡...
    清水夕阅读 57评论 0 0
  • 前几天,部门秘书征求大家外出考察旅行的地点 我说我这样的选择困难症没办法选出一个结果 当时脑海中就在想,我到底是什...
    tphjing阅读 45评论 0 0