Diff

  • 查看工作区(working directory)和暂存区(staged)之间差异:git diff
  • 查看工作区(working directory)与当前仓库版本(repository)HEAD版本差异:git diff HEAD
  • 查看暂存区(staged)与当前仓库版本(repository)差异:git diff --cached / git diff --staged
  • 不查看具体改动,只查看改动了哪些类:git diff --stat

Merge

![](./_image/2016-07-14 20-53-25.jpg?r=80)

  • 解决冲突后/获取远程最新代码后合并代码:git merge branchname ,将 branchname 分支上面的代码合并到当前分支
  • 保留该存在版本合并log:git merge --no-ff branchname 参数 --no-ff 防止 fast-forward 的提交,详情参考:the difference,fast-forward:分支内容一致,指针直接移动,并未能看出分支信息

Rebase

Rebase 同 Merge 的结果是一样的,就是合并本地、远程的改动,但过程中还有区别。

git checkout mywork
git rebase origin

这些命令会把你的"mywork"分支里的每个提交(commit)取消掉,并且把它们临时 保存为补丁(patch)(这些补丁 放到".git/rebase"目录中),然后把"mywork"分支更新 到最新的"origin"分支,最后把保存的这些补丁应用 到"mywork"分支上。 一张图分清 rebase 和 merge 的区别

![](./_image/2016-07-19 20-35-30.jpg?r=56) 在rebase的过程中,也许会出现冲突(conflict). 在这种情况,Git会停止rebase并会让你去解决冲突;在解决完冲突后,用 git-add 命令去更新这些内容的索引(index), 然后,你无需执行 git-commit,只要执行: git rebase --continue 这样git会继续应用(apply)余下的补丁。在任何时候,你可以用 --abort 参数来终止rebase的行动,并且"mywork" 分支会回到rebase开始前的状态。 git rebase --abort

==============================================================

Git飞行规则(Flight Rules)

最新文章

  1. Handler系列之内存泄漏
  2. xp 下查看进程指令
  3. JQ返回顶部代码分享~~~~
  4. kendo ui 富文本编辑控件 Editor 实现本地上传图片,并显示
  5. Fedora 24最新工作站版本之四大重要改进
  6. Oracle_下载地址
  7. Hangover 分类: POJ 2015-06-11 10:34 12人阅读 评论(0) 收藏
  8. 用JS打开网页时自动更改css样式,可用于处理浏览器兼容
  9. Memcached 在windows环境下安装
  10. XAML设计器卡死
  11. Node.js 的Web server--Fenix
  12. 鸟哥的LINUX私房菜基础篇第三版 阅读笔记 四 档案的文件系统的压缩和打包
  13. react-native模拟机调试步骤详解 ——亲测有效!!!!
  14. 环境与工具2:建立高效的mac环境
  15. jsfl 删除库指定内容
  16. ES6中Object.assign() 方法
  17. arm那些事
  18. ARMCortex系列仿真调试器
  19. string的函数的学习
  20. SOA面向服务架构——SOA的概念

热门文章

  1. 机器学习入门之python实现图片简单分类
  2. [jzoj]4216.【NOIP2015模拟9.12】平方和
  3. 【C语言程序】输出前50个素数
  4. IDEA_教你十分钟下载并破解IntelliJ IDEA(2017)(转)
  5. PermissionDispatcher 运行时权限框架
  6. 日期求星期(java)-蓝桥杯
  7. andorid简易定位
  8. (转)JDK 1.8 预览版Lambda语法分析
  9. UIPullRefreshFlash模块demo示例
  10. Machine Learning, Homework 9, Neural Nets