Git 进阶操作(一)
1. 获取提交信息(commit)
git show 1c002d(哈希值的前几位)
: 获取提交的信息;git show HEAD^
: 显示HEAD的上级(parent)提交的信息;git show HEAD~
: 同上;git show HEAD~3
: the first parent of the first parent of the first parent;
// experiment 分支上,还没有合并到master分支上的内容
$ git log master..experiment
D
C
// 变体:
// git log origin/master..HEAD: 本地分支还未合并到远程分支的内容;
// 显示每个分支独有的部分
git log master...experiment
// 升级版
git log --left-right master...experiment
2. 更改历史记录(Rewriting History)
git commit --amend
: 更改最后一次提交的历史记录;
3. 重置(Reset)
- 三颗"树"
- 此处"树"指文件的集合;
- "HEAD": Last commit snapshot, next parent;
- "Index": Proposed next commit snapshot;
- "Working Directory": Sandbox;
3.1 重置情况一
git reset 9e5e6a4
或git reset --soft HEAD~
3.2 重置情况二(默认)
git reset --mixed HEAD~
或git reset HEAD~
3.3 重置情况三
git reset --hard HEAD~
4. 合并分支进阶
git checkout --conflict=diff3 hello.rb
git config --global merge.conflictstyle diff3
: 在配置文件中设置;
- `git log --oneline --left-right HEAD...MERGE_HEAD`: 查看合并时,每个分支包含的操作日志;
- `git log --oneline --left-right --merge`: 查看含有冲突的日志;
4.1 复原分支
git reset --hard HEAD~
: 将合并的分支复原(针对本地仓库)
- `git revert -m 1 HEAD`: 保存主分支(C6)的内容,将合并的分支(C4)内容剔除
git revert ^M
: 将剔除的分支,重新合并到主分支;git merge topic
参考资料:
- Pro Git
- 删除Git仓库中的大文件
- 寻找并删除Git记录中的大文件
- Remove large .pack file created by git
- Removing sensitive data from a repository
- Git+Gerrit如何永久删除历史文件
- git找回本地误删的文件
Git 进阶操作(一)的更多相关文章
- git 进阶操作
1.blame git blame +文件名,可以查看到某个文件每一行最近一次是由谁编辑修改的.-L 22,33 选项可以制定 2.bisect 开始git bisect: $ git bisec ...
- Git 进阶指南(git ssh keys / reset / rebase / alias / tag / submodule )
在掌握了基础的 Git 使用 之后,可能会遇到一些常见的问题.以下是猫哥筛选总结的部分常见问题,分享给各位朋友,掌握了这些问题的中的要点之后,git 进阶也就完成了,它包含以下部分: 如何修改 ori ...
- Git 进阶指南
转自: https://github.com/kaiye/kaiye.github.com/issues/7 在掌握了基础的 Git 使用 之后,可能会遇到一些问题.以下是猫哥筛选总结的部分常见问题, ...
- 从0开始学习 GITHUB 系列之「GIT 进阶」【转】
本文转载自:http://stormzhang.com/github/2016/06/16/learn-github-from-zero5/ 版权声明:本文为 stormzhang 原创文章,可以随意 ...
- 从0开始学习 GitHub 系列之「05.Git 进阶」
关于 Git 相信大家看了之前一系列的文章已经初步会使用了, 但是关于Git还有很多知识与技巧是你不知道的,今天就来给大家介绍下一些 Git 进阶的知识. 1. 用户名和邮箱 我们知道我们进行的每一次 ...
- Git进阶:常用命令和问题案例整理
一.前言 整理常用git命令和以及在实际使用的过程中碰到的问题案例,旨在git进阶,提升工作开发效率,有需要补充的小伙伴欢迎下方留言,本篇持续更新中... 二.命令 配置用户名和邮箱 git conf ...
- Git远程操作详解
Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...
- Git远程操作
Git远程操作 // */ // ]]> Git远程操作 Table of Contents 1 Git远程命令概览 2 Git远程仓库与本地仓库的关系图 3 git clone 4 git ...
- [转]Git远程操作详解
原文:http://www.ruanyifeng.com/blog/2014/06/git_remote.html Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多 ...
随机推荐
- openal 基础知识3
四创新科技extension (Creative Labs'Extensions) 创新科技为OpenAL添加了多个extensions,许多都利用了他们声卡的特性. “Enumerate All”e ...
- [精]Odoo 8.0深入浅出开发教程-模块开发基础
參考资料点击这里. 构建Odoo模块 模块组成 业务对象 业务对象声明为Python类, 由Odoo自己主动加载. 数据文件 XML或CSV文件格式, 在当中声明了元数据(视图或工作流).配置数据(模 ...
- 阿里云ACE下的PHP开发环境搭建
阿里云ACE下的PHP开发环境搭建 本系列文章由ex_net(张建波)编写.转载请注明出处. http://blog.csdn.net/ex_net/article/details/23999053 ...
- js定义对象
1.工厂模式 function createPerson(name,age,job){ var o = {}; o.name = name; o.age = age; o.job = job; o.s ...
- 对于MathType中公式与文字错位的问题怎么解决
MathType是强大的数学公式编辑器,与常见的文字处理软件和演示程序配合使用,能够在各种文档中加入复杂的数学公式和符号,可用在编辑数学试卷.书籍.报刊.论文.幻灯演示等方面,是编辑数学资料的得力工具 ...
- when an event of selector will be fired
OP_READ Operation-set bit for read operations. Suppose that a selection key's interest set contains ...
- [大数据] zookeeper 安装和配置
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件.它是一个为分布式应用提供一致性服务的软件,提供的功 ...
- 文件打包为zip格式文件下载
整个思路是这样的: 1.查询数据库中的文件流放到datatable中2.循环datatable将文件流一个个生成文件,放到对应的文件夹中,3.下载某个文件夹下的所有文件a.循环这个文件夹下的所有文件, ...
- PHP - PhpStorm 快捷键大全 PhpStorm 常用快捷键和配置(转)
原文地址:http://www.cr173.com/html/66775_1.html PhpStorm 是 JetBrains 公司开发的一款商业的 PHP 集成开发工具,PhpStorm可随时帮助 ...
- Yarn中几个专用名称
1. ResourceManager(RM) RM是一个全局的资源管理器,负责整个系统的资源管理和分配.它主要由两个组件构成:调度器(Scheduler)和应用程序管理器(Appli ...