[TOC]
# 為你自己學 Git
[另一種合併方式(使用 rebase) - 為你自己學 Git | 高見龍 (gitbook.tw)](https://gitbook.tw/chapters/branch/merge-with-rebase.html)
# 代码检视工具*Gerrit*的日常使用
# 国内git托管平台
[码云](https://gitee.com/)
[Coding](https://coding.net/)
[gitshell](https://gitshell.com/)
[Taiga](https://taiga.io/)是一个项目管理平台,为敏捷开发人员、设计人员和项目经理提供一个让工作变得真正令人愉快的漂亮工具。
# 可视化比较工具
> [Linux下9种优秀的代码比对工具推荐](https://www.cnblogs.com/yychuyu/p/13189615.html)
## Meld
[Meld](http://meldmerge.org/) 是一个轻量级 GUI 代码比对工具,作为**免费和开源的**,它支持用户比对文件、目录,并且高度集成版本控制软件。但针对软件开发人员,它的以下几个特性尤为吸引人:
* 执行双向和三向差异并合并
* 轻松地在差异和冲突之间导航
* 逐个文件地比较两个或三个目录,显示新文件,缺失文件和更改文件
* 支持许多版本控制系统,包括 Git,Mercurial,Bazaar 和 SVN 等。
## KDiff3
[KDiff3](http://kdiff3.sourceforge.net/) 是另外一种很强大的跨平台差异比对及合并工具,它是由`KDevelop`开发而成,可以在所有类 Unix 平台上运行,包括 Linux ,Mac OS ,Windows 等。可以比对或合并两到三个文件或目录。
## Diffuse
[Diffuse](http://diffuse.sourceforge.net/download.html)
是另外一款很受欢迎的,免费,小巧,也十分简单的 GUI 文本差异比对合并工具,它是用 Python 写成的,具有两个主要功能:文件比对及版本控制,允许文件编辑、合并,并且输出两个文件的差异点。
你可以使用它查看文本比对小结,使用鼠标选择文件里的某行进行编辑。
## DiffMerge
[DiffMerge](https://sourcegear.com/diffmerge/) 是一个跨平台的 GUI 文本比对工具,具有 Linux ,Windows ,macOS 三大平台版本。我们知道,BeyondCompare 是一款收费软件,所以如果你们公司的版权要求比较高的话,不妨考虑一下 DiffMerge工具。
DiffMerge 具有两大功能:1. 图示化显示两个文件之间的改变。包含内部行高亮和完整的编辑支持。2. 图示化显示三个文件之间的改变。允许自动合并(当可以安全操作时)和对结果文件完全编辑控制。
## Beyond Compare
"BeyondCompare(4.1.9.21719)绿色"
[Beyond Compare](http://www.scootersoftware.com/)并且还允许比较PDF,Excel和图像文件。“Pro”版本还包括一个坚实的三文件合并。
## [P4Merge](https://www.perforce.com/products/helix-core-apps/merge-diff-tool-p4merge)
Perforce是以其企业级版本控制平台而闻名的公司,也提供了一个坚实的差异工具:[P4Merge](https://www.perforce.com/product/components/perforce-visual-merge-and-diff-tools)是**免费**的,并配有一个基本功能集,使其成为一个有趣的选择。
https://www.jianshu.com/p/bc059d2846c1
## Code Compare
除了提供所有标准的差异和合并功能,[Code Compare](https://www.devart.com/codecompare)还提供了一些特殊功能,如语法高低和 VisualStudio 集成。
基本版本可以免费使用,而专业版提供了完整的功能集。
## 配置文件
**.gitigonre** 你想要忽略的文件或者目录
~~~
/mtk/ 过滤整个文件夹
*.zip 过滤所有.zip文件
/mtk/do.c 过滤某个具体文件
~~~
`.gitattribute`用于设置文件的对比方式(常用非文本文件)
参考地址:https://git-scm.com/book/zh/v1/%E8%87%AA%E5%AE%9A%E4%B9%89-Git-Git%E5%B1%9E%E6%80%A7
# 参考
http://www.epubit.com.cn/article/829
http://blog.csdn.net/tangbin330/article/details/9128765
http://www.ihref.com/read-16369.html
http://www.h5course.com/plus/search.php?q=git
[使用Git多人协作,完成项目开发](http://www.h5course.com/a/20160629431.html)
[How to Write a Git Commit Message](https://chris.beams.io/posts/git-commit/)
https://waffle.io/
https://www.zenhub.com/
https://sourcegraph.com
[Git常用命令及软件推荐](http://www.cnblogs.com/PeunZhang/p/5957211.html)
# 书籍
[Building Git - jcoglan.com](https://shop.jcoglan.com/building-git/)
[Git提交表情大全](https://www.bugcatt.com/git%e6%8f%90%e4%ba%a4%e8%a1%a8%e6%83%85)
[https://opencollective.com/](https://opencollective.com/)
- 介绍
- 1. Get Git - 安装并且设置Git
- 2. Repository - 建立一个本地的repository
- 3. Commit to it - 检查状态、新增或修改commits
- 4. GitHubbin - 注册GitHub帐号
- 5. Remote Control - 将repository做本地和远程的连接
- 6. Forks and Clones - Fork和clone一个开源的计划
- 7. Branches aren't just for Birds - 建立一个feature branch
- Git分支开发模型
- 8. It's a Small World - 邀请并和别人合作
- 9. Pull, Never Out of Date - 利用Push和pull来和GitHub.com同步
- 10. Requesting You Pull Please - 建立一个pull request
- 11. Merge Tada - Merge和删除branches
- 学会 GitHub
- GitHub 使用指南
- git 与 github 模板配置
- GitHub Actions
- 实用技巧
- Git Flow
- Submodule子模块
- 工作记录
- 常用命令
- 帮助
- 资源
- 解疑答惑