#在当前目录新建一个git仓库
$ git init
#检查文件状态
$ git status或$git status -s
#向暂存区提交文件
$ git add ...
#提交更新
$ git commit -m "this is a message"
# 撤销对文件的修改
$ git checkout ...
#向暂存区提交多个文件
$ git add .
#移除暂存区中的文件
$ git reset HEAD ...
#跳过暂存区提交(把以跟踪过的文件暂存起来一并提交)
$ git commit -a -m "this is a message"
#移除文件
$ git rm -f ...(git仓库和工作区中同时移除)
$git rm --cached ...(只从git仓库移除,保留工作区)
忽略文件
创建.gitignore
1.以#开头是注释
2.以/结尾是目录
3.以/开头防止递归
4.以!开头表示取反
#查看提交历史
$ git log
$ git log --pretty=fomat:"%h |%an | %ar %s"
#根据ID回退到指定版本
$ git reset --hard <CommitID>
#回退版本后使用查看命令操作历史
$ git reflog --pretty=oneline
#根据ID跳到最新版本
$ git reset --hard <CommitID>
#查看分支列表
$ git branch
#创建新分支
$ git branch 分支名称
#切换分支
$ git checkout 分支名称
#创建并立即切换到新分支上
$ git checkout -b 分支名称
#切换到master主分支后合并分支
$ git branch master
$ git merge 分支名称
#删除分支
$ git branch -d 分支名称
#基于HTTPS把本地仓库上传到Github
$ git remote add origin ....
$ git push -u origin master
#生成SSH key
$ ssh-keygen -t rsa -b 4096 -C "邮箱"
#检查Github的SSH key是否配置成功
$ ssh -T git@github.com
#将远程仓库克隆到本地
$ git clone 远程仓库地址
#将本地分支推送到远程仓库
$ git push -u 远程仓库的别名 本地分支名称:远程分支名称
#查看远程仓库所有分支列表
$ git remote show 远程仓库名称
#把远程分支下载到本地仓库中
$ git checkout 远程仓库名称/远程分支名称
#把远程分支最新代码下载到本地对应分支中
$ git pull
#删除远程仓库中指定的分支
$ git push 远程仓库名称 --delete 远程分支名称