下载安装gitGit - Downloadshttps://www.git-scm.com/downloads
全局配置用户名
$ git config --global user.name "benlalagang"
全局配置用户邮箱
$ git config --global user.email "12345@qq.com"
查看所有全局配置项
git config --list --global
查看指定的全局配置项
git config user.name
git config user.email
浏览器打开 git config 命令的帮助手册
git help config
bash: get: command not found
想要获取 git config 命令的快速参考
git config -h
现有目录初始化仓库
右键选择 Git Bash Here
git init
检查文件状态
git status
检查文件状态 精简显示
未跟踪 未修改(目标状态) 已修改 已暂存
git status -s
git status --short
文件的各种状态
?? 两个红色的问号是 未被追踪的意思
A 绿色的A 已经被追踪并处于暂存状态
M 红色的M 文件已被修改 并且没有被放入暂存区
M 绿色的M 文件已被修改 已经被被放入暂存区
D 绿色的D 表示已经被删除
* 绿色的星号 代表 目前所处的分支
开始追踪一个文件
git add index.html
追踪当前目录全部的文件
git add .
设置想要忽略的文件 .gitignore 忽略文件 默认创建如下
以#开头的是注释
以/结尾的是目录
以/开头的是方式递归
以!开头的表示取反
可以使用glob模式进行文件匹配(简化的正则)
# 忽略 style.css 这个文件
style.css#忽略任何目录下名为 test的文件夹
test/# 忽略所有的 .jpg文件
*.jpg# 跟踪所有的 index.jpg 即使之前忽略了 .jpg文件
!index.jpg# 只忽略当前目录下的dist文件 而不忽略 xxx/dist
/dist# 忽略doc文件夹下所有的 txt文件 但不忽略 doc/server/arch.txt
doc/*.txt# 忽略doc/ 目录下 及其所有子目录下的 .pdf文件
doc/**/*.pdf
撤销对文件的修改----慎重操作
git checkout -- index.html
取消暂存的文件
git reset HEAD 要移除的文件
git reset HEAD . 移除全部
跳过缓存 直接从工作区提交到仓库 本地提交
git commit -a -m "描述信息"
一般是先 git add . 下面省略 -a
git commit -m "描述信息"
移除文件
仓库和工作区同时移除
git rm -f index.js
只移除仓库中的文件 保留工作区中的文件
git rm --cached index.css
查看提交历史按时间列出所有的提交历史 最近的排在最上面
git log
只显示最新的2条 数字按需填写
git log -2
在一行上展示最近两条提交历史的信息
git log -2 --pretty=oneline
展示最近两条提交历史的信息 自定义输出格式
%h 提交的简写哈希值
%an 作者名字
%ar 修订日期 按多久以前的方式显示
%s 提交说明
git log -2 --pretty=format: "%h --- %an ---%ar ---%s"
回退到指定的版本
在一行上展示所有的提交历史
git log --pretty=oneline
使用 git reset --hard 命令 根据指定提交的ID 回退到指定版本
git reset --hard <commitID>
在旧版本中使用 git reflog --pretty=oneline 命令才能看到完整的操作历史 用git log -pretty=oneline 不起作用
再次使用 git reset --hard 命令 根据指定提交的ID 回退到指定版本
git reset --hard <commitID>