常用命令
查看配置
git config --list [--local | --global | --system]
添加配置
git config [--local | --global | --system] user.name 'Your name'
git config [--local | --global | --system] user.email 'Your email'
local:区域为本仓库 global: 当前用户的所有仓库 system: 本系统的所有用户
添加文件到暂存区
git add .
将工作空间新增和被修改的所有文件添加的暂存区
git add -u
将工作空间被修改和被删除的文件添加到暂存区(不包含没有纳入Git管理的新增文件) 避免把工作区没准备好的新文件直接加到暂存区
日志查看
git log --all 查看所有分支的历史
git log --all --graph 查看图形化的 log 地址
git log --oneline 查看单行的简洁历史。
git log --oneline -n4 查看最近的四条简洁历史。
git log --oneline --all -n4 --graph 查看所有分支最近 4 条单行的图形化历史。
git help --web log 跳转到git log 的帮助文档网页
通过客户端查看日志
gitk
后面可以跟上文件的路径, 这样能看单个文件的修改历史的具体内容。非常有用。
##重命名
git mv a b
新建分支
git checkout -b 加了 -b 就是新建分支,这样肯定不会出现分离头指针
.git目录
HEAD:指向当前的工作路径
config:存放本地仓库(local)相关的配置信息。
refs/heads:存放分支
refs/tags:存放tag,又叫里程牌 (当这次commit是具有里程碑意义的 比如项目1.0的时候 就可以打tag)
objects:存放对象 .git/objects/ 文件夹中的子文件夹都是以哈希值的前两位字符命名 每个object由40位字符组成,前两位字符用来当文件夹,后38位做文件。
版本库对象查看
cat HEAD 查看HEAD文件的内容
git cat-file 命令 显示版本库对象的内容、类型及大小信息。
git cat-file -t b44dd71d62a5a8ed3 显示版本库对象的类型
git cat-file -s b44dd71d62a5a8ed3 显示版本库对象的大小
git cat-file -p b44dd71d62a5a8ed3 显示版本库对象的内容
tree、blob、和commit的关系
commit是树根节点,tree是文件夹,blob是文件夹里的文件,最终每个文件都是一个blob
删除分支
git branch -d branch_name
-d在删除前Git会判断在该分支上开发的功能是否被merge的其它分支。如果没有,不能删除。如果merge到其它分支,但之后又在其上做了开发,使用-d还是不能删除。 -D 强制删除
修改提交记录
git commit --amend //对最新一次提交做 commit 修改
合并多个提交日志
连续(不连续)
rebase -i commit_id
弹出的交互界面,上下commit的顺序是有讲究的,先处理上面的,再处理下面的commit。原先历史树上的commit顺序是可以根据自己的需求调整的。
暂存区恢复成head
git reset head
回到某次的commit
git reset --hard commit_id
暂存区覆盖工作区修改
git checkout
删除文件
git rm filename
临时加塞紧急任务
当前工作区挂起
git stash
查看挂起列表
git stash list
弹出挂起的工作区
git stash apply 弹出
git stash pop 弹出
注:apply-保留stash;pop-不保留
差异比较
暂存区与head比较
git diff --cached
暂存区与工作区比较
git diff
工作区和head之间的差异
git diff head
比较某文件两次不同提交的差异
git diff <commit_id1> <commit_id2> --<file_name>
比较某文件两个不同分支的差异
git diff <branch_1> <branch_2> -- <file_name>
查看远程版本库信息
git remote -v
origin <url> 添加origin远程版本库
git remote add
拉取远程版本库
git fetch origin
查看合并帮助信息
git merge -h
合并origin上的master分支(两分支不是父子关系)
git merge --allow-unrelated-histories origin/master
推送同步到origin仓库
git push origin
github
github Project 看板
issue模板,md文件
精确检索
xxx in:readme stars: >1000
搭建blog
blog easily start in:readme stars:>5000
Code review
Code review 指定reviewer
标签:git,log,收集,--,暂存区,查看,GIT,日常,commit
From: https://blog.51cto.com/u_16082754/7322951