1. 基础操作
初始化本地库
git init
显示当前的 Git 配置
git config --list
空格向下翻页,b 向上翻页,q 退出
编辑 Git 配置文件
git config -e [--global]
查看提交代码时的用户名
git config user.name
查看提交代码时的用户邮箱
git config user.email
设置提交代码时的用户名
git config [--global] user.name "{username}"
设置提交代码时的用户邮箱
git config [--global] user.email "{email}"
查看工作区、暂存区的状态
git status
将工作区的“新建/修改”添加到暂存区
git add {filename}
移除暂存区的修改
git rm --cached {filename}
将暂存的修改提交
git commit -m "{提交日志}" {filename}
2. 日志
查看历史日志
git log
空格
向下翻页,b
向上翻页,q
退出。
以漂亮的一行显示日志,包含全部哈希索引值
git log --pretty=oneline
以简洁的一行显示日志,包含简洁哈希索引值
git log --oneline
以简洁的一行显示,包含简洁哈希索引值,同时显示移动到某个历史版本所需的步数
git reflog
3. 版本控制
回到指定哈希值所对应的版本
git reset --hard {简洁/完整哈希索引值}
如果不加哈希索引值,则默认恢复至上一个版本
强制工作区、暂存区、本地库为当前 HEAD 指针所在的版本
git reset --hard HEAD
后退一个版本
git reset --hard HEAD^
一个“ ^ ”表示回退一个版本
后退一个版本
git reset --hard HEAD~1
波浪线“ ~ ”后面的数字表示后退的版本数
4. 比较差异
比较工作区和暂存区的所有文件差异
git diff
比较工作区和暂存区的指定文件的差异
git diff {filename}
比较工作区跟本地库的某个版本的指定文件的差异
git diff {HEAD|HEAD^|HEAD~|哈希索引值} {filename}
5. 分支操作
查看所有分支
git branch -v
删除本地分支
git branch -d {branchname}
新建分支
git branch {branchname}
切换分支
git checkout {branchname}
合并分支
git merge {branchname}
如果
master
分支合并temp
分支,那么当前必须处于master
分支上,然后执行git merge temp
命令。
6. 与远程仓库交互
克隆远程仓库
git clone {远程仓库地址}
将远程仓库完整地克隆到本地并初始化本地仓库,新建
origin
别名
查看远程仓库地址
git remote -v
新增远程库地址
git remote add {别名} {远程仓库地址}
删除指定的远程仓库
git remote rm {别名}
将指定分支推送到远程仓库
git push {别名} {分支名}
把远程仓库的修改拉取到本地
git pull {别名} {分支名}
该命令包括
git fetch
、git merge
拉取远程库的指定分支,但不与本地仓库合并
git fetch {别名} {远程仓库分支名}
将拉取的远程仓库的分支与当前所在本地分支进行合并
git merge {别名/远程仓库分支名}