Git 基础指令
作者:互联网
Git 基础指令
①Git初始化配置
-
检查git版本:
git --version
-
查看git相关命令:
git --help
-
查看当前git配置信息:
git config --list
-
查看git用户名/邮箱:
# 查询git所使⽤的用户名
git config user.name
# 查询git所使⽤的email
git config user.email
# 注: --global 表示全局, 没有--global表示只查询在当前项目中的配置
git config --global user.name
git config --global user.email
- 全局配置用户名:
git config --global user.name "username"
- 配置全局邮箱:
git config --global user.email "@email.com"
②Git代码管理
-
初始化项目:
git init
-
需要提交的所有存放到暂存区:
git add * # 将工作区所有修改添加到暂存区
git add . # 将工作区所有修改添加到暂存区
git add <file-name> # 将指定文件添加到暂存区
git add *.js # 提交所有 .js 格式文件
git add -f <file-name> # 强制添加 指定文件添加到暂存区
# 注:<file-name> 指的是文件的名称
- 将暂存区的文件恢复到工作区
git reset <file-name> # 从暂存区恢复指定到工作区
git reset -- . # 从暂存区恢复所有文件到工作区
git reset --hard # 把暂存区的修改退回到工作区4.
-
查看工作区,暂存区的状态:
git status
-
移除暂存区的修改:
git rm --cached <file-name>
-
将缓存区的文件,提交到本地仓库(版本库):
git commit <file-name> ... "相关的记录信息"
# 将缓存区的指定文件提交到本地仓库
git commit -m "相关的记录信息"
# 将缓存区的所有文件提交到本地仓库
git commit -am '相关的记录信息'
# 跳过暂存区域直接提交更新并且添加备注的记录信息
git commit --amend '相关的记录信息'
# 使用一次新的commit,替代上一次提交,如果代码没有任何新变化,则用来修改上一次commit的提交记录信息
- 撤销 commit 提交:
git revert HEAD # 撤销最近的一个提交(创建了一个撤销上次提交(HEAD)的新提交)
git revert HEAD^ # 撤销上上次的提交
③查看日志
- 查看历史提交(commit)记录:
git log # 查看历史commit记录
git log --oneline # 以简洁的一行显示,包含简洁哈希索引值
git log --pretty=oneline # 查看日志且并且显示版本
git log --stat # 显示每个commit中哪些文件被修改,分别添加或删除了多少行
# 注:空格向下翻页,b向上翻页,q退出
-
查看分支合并图:
git log --graph
-
查看版本线图:
git log --oneline --graph
④Git版本控制
- 回到指定哈希值对应的版本:
git reset --hard <Hash> # 回到指定 <Hash> 对应的版本
# 注: <Hash> 是版本的哈希值
git reset --hard HEAD # 强制工作区、暂存区、本地库为当前HEAD指针所在的版本
- 版本回退:
git reset --hard HEAD~1 # 后退一个版本
# 注:~ 后面的数字表示回退多少个版本
⑤分支管理
- 查看分支:
git branch # 查看所有本地分支
git branch -r # 查看所有远程分支
git branch -a # 查看所有远程分支和本地分支
git branch --merged # 查看已经合并的分支
- 创建分支:
git branch <branch-name> # 创建分支,依然停留在当前的分支
# 注: <branch-name> 是分支的名称
- 切换分支:
git checkout <branch-name> # 切换到指定分支,并更新工作区
git checkout - # 切换到上一个分支
- 创建并切换分支:
git chechout -b <branch-name>
# 创建一个新的分支,并切换到这个新建的分支上
- 合并分支:
git merge <branch-name>
# 合并<branch-name>分支到当前分支
- 删除分支:
git branch -d <branch-name> # 只能删除已经被当前分支合并的分支
git branch -D <branch-name> # 强制删除分支
- 删除远程分支:
git push origin --delete <remote-branch-name>
# 注:<remote-branch-name> 远程分支名