Git常用命令 - 随时更新
1. 配置用户信息
git config --global user.name <name>
git config --global user.email <email_address>
2. 配置高亮显示
git config --global color.ui auto
使用auto的高亮配置比较省事。
3. 配置git log
git config --global log.decorate short
decorate选项设置成short,这样在commit message上会显示对应的ref name。(省略前缀refs/heads/, refs/tags/ and refs/remotes/)
4. 配置git send-email
git config --global sendemail.smtpserver <smtpserver>
git config --global sendemail.confirm always
git config --global sendemail.suppresscc all
confirm选项设置成每次发送总会提示确认信息。suppresscc选项设置成完全禁止auto cc,这样就不会通过检查commit message自动添加email到CC list里了。
5. 查看图形化的提交历史
git log --graph --oneline
6. 查看merge的信息
只查看merge提交。
git log --merges --oneline
对于merge,在commit信息中会显示两个分支在merge前的commit。
$ git show c1ef57a
commit c1ef57a3a3f5e69e98baf89055b423da62791c13 (HEAD -> master)
Merge: ed535f2 2faf852
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date: Thu Feb :: + Merge tag 'io_uring-5.6-2020-02-05' of git://git.kernel.dk/linux-block
[...]
查看两个分支的共同祖先。
git merge-base ed535f2 2faf852
7. 为连续的commit生成patch
git format-patch <base_commit>..<latest_commit>
不包含base_commit。
8. cherry-pick连续的commit
git cherry-pick <base_commit>..<latest_commit>
不包含base_commit。使用-n选项的话,可以在cherry-pick的过程中不提交commit,而是cherry-pick全部完成后手动提交一个commit。
9. git merge
git merge --no-ff <branch/tag/commit>
fast-forward merge
从master branch创建一个devel branch来接收commit提交,而master上不再有commit提交。master在merge devel的时候,就可以进行fast-forward merge,将devel上的每个commit都apply到master上并且保持commit ID不变,最后不再创建merge commit。
non-fast-forward merge
这是常用的merge方式,创建一个merge commit,在该merge commit上merge devel branch上的代码改动。使用选项--no-ff。
10. git tag
git tag -a <tag_name> <commit_id>
Git常用命令 - 随时更新的更多相关文章
- git 常用命令(不定期更新)
过程写写吧,总是忘记.1,在一个文件夹下 键入 git init ,使之成为Git可以管理的仓库.2,编写一个文件readme.txt.3,把文件添加到仓库 git add readme.txt4,把 ...
- git常用命令[持续更新]
git commit -am "abc" 提交已经删除过的文件 git reset --hard HEAD 用于清除跟踪文件的修改
- 把git仓库从码云迁到github,及git常用命令
前言 刚开始建仓库的时候,因为网络的原因选择了国内的码云.后来又想换成github,毕竟平时github使用率比较高. 替换远程仓库地址方式如下: git remote set-url origin ...
- git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- Git 常用命令 更新与提交
整理了一下Git 常用命令,这个版本还是比较好用的,最后附上个人终结版,帮助你快速上手. 取得Git仓库 初始化一个版本仓库 git init Clone远程版本库 git clone yourgit ...
- 【github&&git】4、git常用命令(持续更新中)
git常用命令(持续更新中) 本地仓库操作git int 初始化本地仓库git add . ...
- Git 常用命令详解
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- Git 常用命令详解(二)
Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) Git 的更多介绍 ...
- 【转】 Git 常用命令详解(二)----不错
原文网址:http://blog.csdn.net/ithomer/article/details/7529022 Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如: ...
随机推荐
- Springboot | @RequestBody 接收到的参数对象属性为空
背景 今天在调试项目的时候遇到一个坑,用Postman发送一个post请求,在Springboot项目使用@RequestBody接收时参数总是报不存在,但是多次检查postman上的请求格式以及项目 ...
- 惠普电脑win10关闭自动调节亮度
自动调节亮度真的太烦人了,突然从亮的画面变暗,又从暗的亮度变量,眼睛受不了.但是试了很多种方法都不行. 方法 第一种: 有一些电脑是有在设置--->显示界面--->有一个 关闭自动调节 按 ...
- Pileup 格式详细说明
转自: https://blog.csdn.net/herokoking/article/details/79276939 Pileup 格式最初是由Sanger Institute的Tony Cox ...
- qt creator源码全方面分析(2-1-1)
目录 C++的策略/二进制兼容性问题 定义 ABI注意事项 可做与不可做 库程序员的技巧 位标志 使用d指针 故障排除 在没有d指针的情况下将新数据成员添加到类中 添加已重新实现的虚函数 使用新类 向 ...
- myeclipse 项目引入 com.sun.image.codec.jpeg 的api报错解决方法
今天在做压缩图片的功能的时候发现JDK自带的jar找不到的问题,网上找到一个方法,实测可行,这边记录下: 在Eclipse中处理图片,需要引入两个包: import com.sun.image.c ...
- POJ_1042_贪心
题目描述: 每组数据给你n个胡,h小时时间,每个湖一次可钓鱼数量,每个湖每次钓鱼后下次可钓鱼数量的减少量,从每个湖到下一个湖所需时间.求最大钓鱼量. 要注意的是,刚开始在第一个湖,每次移动只能往下一个 ...
- JAVA编程思想——分析阅读
需要源码.JDK1.6 .编码风格参考阿里java规约 7/12开始 有点意识到自己喜欢理论大而泛的模糊知识的学习,而不喜欢实践和细节的打磨,是因为粗心浮躁导致的么? cron表达式使用 设计能力.领 ...
- jquery deferred 转载
阮一峰的网络日志 » 首页 » 档案 JavaScript http://www.ruanyifeng.com/blog/2011/08/a_detailed_explanation_of_jquer ...
- SpringBoot图文教程5—SpringBoot 中使用Aop
有天上飞的概念,就要有落地的实现 概念+代码实现是本文的特点,教程将涵盖完整的图文教程,代码案例 文章结尾配套自测面试题,学完技术自我测试更扎实 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例 ...
- RFC笔记,IPv6 Node Requirements
Request for Comments: 6434,IPv6 Node Requirements 路由器节点必须能够生成链路本地地址 5.9.2. IPv6 Stateless Address Au ...