以前一直使用svn diff / git diff,看到的都是console下的对比提示。 今天花了点时间找了一款工具,基于GUI的diff操作。
软件
选择的是p4merge , 下载路径: http://www.perforce.com/perforce/downloads/index.html
下载完成后,直接解压缩到 /usr/local/program/p4merge 目录
git diff配置
1. 创建相应脚本
gitmerge.sh脚本:
#!/bin/sh
/usr/local/program/p4merge/bin/p4merge $*
gitdiff.sh脚本:
#!/bin/sh
[ $# -eq 7 ] && gitmerge.sh "$2" "$5"
2. 配置git diff/merge命令
git config --global merge.tool gitmerge
git config --global mergetool.gitmerge.cmd 'gitmerge.sh "$BASE" "$LOCAL" "$REMOTE" "$MERGED"'
git config --global mergetool.trustExitCode false
git config --global diff.external gitdiff.sh
or 直接 vi ~/.gitconfig
[merge]
tool = gitmerge
[mergetool "gitmerge"]
cmd = gitmerge.sh \"$BASE\" \"$LOCAL\" \"$REMOTE\" \"$MERGED\"
[mergetool]
trustExitCode = false
[diff]
external = gitdiff.sh
svn diff配置
1. 创建相应脚本
svndiff.sh脚本:
#!/bin/sh
shift 5
gitmerge.sh "$@"
#vimdiff -f "$@"
svnmerge.sh脚本:
2. 配置svn diff命令
vi ~/.subversion/config
diff-cmd = svndiff.sh
merge-tool-cmd = gitmerge.sh
效果
参考资料
- 大小: 78.2 KB
- 大小: 98.7 KB
分享到:
相关推荐
7. **优化与扩展**:可能还会讨论如何根据具体需求对工具进行定制,比如添加新的统计指标,集成到持续集成/持续部署(CI/CD)流程中,或者生成可视化报告。 至于标签中的“源码”和“工具”,表明这个话题涉及的是与...
- 工具会自动分析差异并以可视化方式呈现,通常用不同的颜色或侧边栏来区分增删改的行。 - 对于SVN项目,可以通过工具的版本控制集成,直接比较不同版本之间的差异。 - 如果需要,可以进行文件或代码的合并操作。...
- **KDiff3:** 另一个流行的可视化合并工具,支持三路比较,对于解决复杂的合并冲突特别有用。 #### 二、Git 应用实践 **2.1 GitLab 和 GitHub** - **GitHub:** 最大的开源代码托管平台之一,支持个人和组织...
- Git 提供了多种图形化工具,如 `gitk`、`gitg` 和 `qgit`,用于可视化版本历史。 - **11.2 命令行工具** - Git 的命令行工具也非常强大,如 `git rev-parse`、`git rev-list` 和 `git log` 等,可以精确地检索...
#### 六、使用可视化工具SourceTree SourceTree是一款由Atlassian开发的免费图形界面Git客户端,旨在简化Git的使用。其主要特点包括: 1. **直观的操作界面**:提供了一个简洁明了的界面,使得Git操作更加直观易懂...
9. **Web 访问和可视化**:介绍通过 Web 界面(如Trac、Redmine)和可视化工具(如TortoiseSVN)来管理和查看 SVN 仓库的方法。 10. **服务器维护与优化**:学习如何备份和恢复 SVN 仓库,以及如何调整服务器配置以...
- 快照(Revision Graph):可视化版本历史,追踪版本间的关联。 - 锁定(Lock):防止其他用户同时修改同一文件,确保数据一致性。 6. SVN与Git的对比: SVN以集中式模型为主,所有版本历史集中在服务器上;而...
- 提供可视化版本管理界面,易于理解和操作。 #### 二、Git的发展历程 - **背景**: Linus Torvalds 在创建 Linux 内核过程中面临源代码管理难题。 - **早期解决方案**: - 志愿者通过 `diff` 方式提交代码变更。 ...
3. **版本控制**:与Git、SVN等版本控制系统集成,用于可视化代码差异。 4. **数据同步**:在多用户协作的场景中,比较并合并用户间的改动。 总的来说,jsdiff是前端开发中不可或缺的工具,它通过简单的API提供...
- **2.3.2 使用图形界面可视化历史(Using a GUI to Visualize History)**:介绍了一些常用的图形化Git客户端。 **2.4 撤销操作(Undoing Things)** - **2.4.1 修改最后一次提交(Changing Your Last Commit)**:当...
5. **版本控制集成**:很多文本对比工具可以与版本控制系统(如Git, SVN)集成,方便在提交前检查代码差异。 6. **命令行工具**:对于程序员来说,命令行版本的文本对比工具(如diff和vimdiff)可以方便地融入开发...
git的可视化特定的文件,svn目录或无所不在的DS_Store文件隐藏。文件夹比较可以使用从最快“仅比较日期和大小”的细粒度逐字节比较不同的技术来实现。该文件比较是使用UNIX的diff命令这个选择使得结果快速,标准,...
6. **可视化界面**:软件的用户界面直观易用,提供了多种视图模式以适应不同的工作需求,如并排比较、上下比较等,让比较和合并操作更加直观。 7. **跨平台支持**:无论你是Windows、macOS还是Linux用户,Araxis ...
工具如Beyond Compare、Kaleidoscope或者Git自带的`git diff`,可以帮助我们可视化两个版本之间的差异,包括新增、删除和修改的代码行。这种对比有助于理解代码的变化,并确保在合并时不会引入错误。 4. 协同开发:...
p4merge是一款由Perforce公司开发的可视化三向合并工具,它被广泛用于解决代码冲突和比较文件差异。在Versions中,用户可以选择p4merge作为默认的外部对比工具,以利用其强大的对比功能。以下是安装和配置p4merge的...
- **版本控制**:配合Git、SVN等版本控制系统,TextDiff可以帮助开发者查看提交之间的差异,理解每一次更新的具体内容。 - **代码审查**:在代码审查过程中,团队成员可以利用TextDiff对比新旧代码,确保修改符合...
1. **可视化界面**:提供清晰的分栏视图,左右两栏分别显示两个文件或目录的内容,差异部分以高亮显示。 2. **文本和二进制比较**:支持文本文件和二进制文件的比较,适应不同类型的文件比较需求。 3. **同步滚动*...
专用的XML比较工具如XMLSpy或Beyond Compare的XML模式能识别元素和属性的差异,同时保持XML的结构可视化。 源码对比是软件开发中的关键环节,特别是对于版本控制系统(如Git、SVN)的使用者。源码对比工具可以帮助...
`vdiff`库可以很好地与Git、Mercurial等版本控制系统结合,作为它们的辅助工具,用于增强代码审查或提交信息的可视化。此外,它也可以与IDE(如PyCharm)或其他开发工具集成,提供更直观的差异比较体验。 6. **...