git 在 windows上自定义比较、合并工具(Beyond Compare)

文章分类:软件开发管理

在windows上就选Beyond Compare来作比较和合并工具吧。

Beyond Compare官方给出来多个版本工具的配置方案。

http://www.scootersoftware.com/support.php?c=kb_vcs.php

Git for Windows

Note: If you use the Git for Windows' Bash Command Prompt instead of the default Windows Command Prompt, you need to escape the $ character with */$*.

Diff
At a command prompt enter the commands:
git config --global diff.tool bc3
git config --global difftool.bc3.cmd "/"c:/program files/beyond compare 3/bcomp.exe/" /"$LOCAL/" /"$REMOTE/""
git config --global difftool.prompt false

To launch a diff with BC3, use the command "git difftool foofile.txt".

3-Way Merge (v3 Pro)
At a command prompt, enter the commands:
git config --global merge.tool bc3
git config --global mergetool.bc3.cmd "/"c:/program files/beyond compare 3/bcomp.exe/" /"$LOCAL/" /"$REMOTE/" /"$BASE/" /"$MERGED/""
git config --global mergetool.bc3.trustExitCode true

To launch a 3-way merge with BC3, use the command "git mergetool foofile.txt".

需要注意的是在配置
git config --global difftool.bc3.cmd "/"c:/program files/beyond compare 3/bcomp.exe/" /"$LOCAL/" /"$REMOTE/""



git config --global mergetool.bc3.cmd "/"c:/program files/beyond compare 3/bcomp.exe/" /"$LOCAL/" /"$REMOTE/" /"$BASE/" /"$MERGED/""

这个的时候会丢失 $引用的变量,所以最好还是检查一下配置文件的配置是否正确。

我的配置文件:

[user]
  1. name=liujiuwu
  2. email=liujiuwu@gmail.com
  3. [color]
  4. diff=auto
  5. status=auto
  6. branch=auto
  7. [alias]
  8. st=status
  9. rb=svnrebase
  10. ci=commit-a
  11. co=checkout
  12. [diff]
  13. tool=bc3
  14. [difftool"bc3"]
  15. cmd=/"c:/programfiles/BeyondCompare3/BComp.exe/"/"$LOCAL/"/"$REMOTE/"
  16. [difftool]
  17. prompt=false
  18. [merge]
  19. tool=bc3
  20. [mergetool"bc3"]
  21. cmd=/"c:/programfiles/BeyondCompare3/BComp.exe/"/"$LOCAL/"/"$REMOTE/"/"$BASE/"/"$MERGED/"
  22. trustExitCode=true

同理, Ubuntu上的配置如下所示,只需要把bcompare放到PATH的环境变量中:

[diff]
tool = bc3

[difftool "bc3"]
cmd = /"bcompare/" /"$LOCAL/" /"$REMOTE/"

你可能感兴趣的:(windows)