所在位置:

git常用命令

这里记录一些自己常用的git命令,方便自己查找。

命令流程图

上图的说明:

  • 工作区Workspace:本地工作目录
  • 暂存区:git add以后,当前对文件的更改会保存到这里
  • 版本库:git commit以后,代码提交到本地仓库
  • 远程仓库:远程仓库名一般默认叫origin。git push以后,本地仓库里优先于远程仓库的commit会被push到远程仓库

初始化配置

# 配置用户名
git config --global user.name “test”

# 配置邮箱
git config --global user.email “test@163.com”

# 查看配置
git config --list

创建git仓库

# 创建新的本地仓库
git init

# 复制仓库(可以是本地或者远程的)
git clone [url]

添加、删除和提交文件

# 添加当前目录的所有文件到暂存区
git add .

# 添加指定文件到暂存区
git add filename

# 添加指定目录的所有文件到暂存区
git add dir

# 这个是删除暂存区的文件,但工作区的文件要先删除
git rm filename

# 把工作区和暂存区的文件删除
git rm -f filename

# 把暂存区的文件删除,保留文件在工作区
git rm --cached filename

# 从暂存区提交文件到版本区
git commit -m "提交说明"

# 从工作区直接提交文件到版本区
git commit -a -m “提交说明”

查看当前仓库状态

# 查看当前状态
git status

查看log

# 查看版本历史
git log

# 显示commit历史,以及每次commit发生变更的文件
git log --stat

# 用一行显示最近两条提交记录
git log -2 --pretty=oneline

# 显示提交的历史和变化的内容
git show [commit_id]

# 显示提交的某个文件变化的内容
git show [commit_id]:filename

# 显示当前分支的最近几次提交
git reflog

# 查看分支合并图
git log --graph

对比和撤销操作

# 工作区与暂存区的对比
git diff

# 暂存区与版本区的对比
git diff --cached

# 工作区与版本区的对比
git diff master

# 丢弃暂存区修改但没有commit的文件
git checkout -- <filename>

# 丢弃git add到暂存区的文件,在暂存区修改过的文件不能用这个,用上面那个命令
git reset HEAD <filename>

恢复操作

# 恢复到某个版本的文件
git checkout commit_id < filename > 

# 恢复到某个版本
git reset --hard commit_id

# 恢复到上一个版本
git reset --hard HEAD

分支操作

# 查看分支
git branch

# 创建新分支
git branch new_branch

# 切换分支
git checkout branch_name

# 新建一个分支并切换到那个分支上
git checkout -b new_branch

# 删除分支
git branch -d branch_name

# 强制删除分支
git branch -D branch_name

# 把branch_name合并到当前分支
git merge branch_namejj

远程仓库

# 添加远程仓库
git remote add origin url

# 查看远程仓库的连接情况
git remote -v

# 新建本地分支并连接远程
git checkout -b dev origin/dev

# 推送分支
git push origin master

# 拉取分支,不会直接合并到本地分支上
git fetch

# 拉取分支,直接合并到本地分支上
git pull

标签管理

# 创建标签
git tag v1.0

# 查看标签信息
git show v1.0

参考链接

【上一篇】用scrapy爬取古诗词网站

【下一篇】Pro Git 读书笔记