1、git --version 查看版本号
2、git config --global user.name ‘xxx‘
git config --global user.email ‘xxx@xx.com‘
3、git config --local 配置,缺省为local
git config --global 优先级 local>global>system
git config --system
4、git config --list --local 查看列表
git config --list --global
git config --list --system
5、git config --unset --local user.name 清除用户
git config --unset --global user.name
git config --unset --system user.name
6、初始化项目指令
有代码:cd 所在文件夹
git init
没有代码:cd 文件夹
git init project_name
cd project_name
7、git add 文件
git commit -m "备注操作内容"
8、git status 查看状态
9、git mv a b 重命名
10、git checkout -b 创建并跳转到新分支
11、git cat-file -t 123123 查看类型 -t看类型 -p看内容
12、git diff 比较两个commit的区别
git diff HEAD HEAD^1^1 比较 HEAD~2 一个意思
13、git switch 分支
14、删除不需要的分支
git branch -av 查看所有分支信息
git branch -v 查看本地分支信息
gitk --all 以图形化界面查看分支信息
git branch -d 分支名 删除远程分支
git branch -D 分支名 强行删除某个分支
15、查看commit日志
git log 查看操作日志
git log --oneline 简化版日志
git log -n2 --oneline 最近两次简化版日志
git log --all --graph 左侧带有分支结构的操作日志
16、怎么修改最新的commit的message
git commit --amend 在vim里变更
17、怎么修改老旧的commit的message
git rebase -i (前一个commit id号)分为两个步骤 具体操作按照提示处理
18、 合并多个连续commit
git rebase -i (前一个 commit id号) s合并 s和最开始的pick 组合一起
19、合并不连续的commit
git rebase -i (前一个commit id号) 加第一个, 调整顺序,放到一起 s 再添加额外信息作为总的信息
20、比较暂存区和HEAD所含的差异
git add 文件后
git diff --cached
21、比较工作区和暂存区所含文件的差异
git diff 查看所有文件差异
git diff -- 文件名 针对某一个文件 或多个
22、让暂存区恢复成和HEAD的一样
git reset HEAD 暂存区都不要了
23、 让工作区的文件恢复成暂存区一样
git checkout -- 文件 工作区都不要了
24、取消暂存区部分文件的更改
git reset HEAD -- 文件名
25、消除最近的几次提交
git reset --hard 前一个commit号 慎用
git reset --hard HEAD 暂存区和工作区变成跟头指针一样的
26、查看不同提交的指定文件的差异
git diff temp master 比较两个分支
git diff temp master -- index.html 具体文件比较
git diiff commit号1 commit号 2 --具体文件
27、如何删除文件的方法
git rm 文件名
28、开发中临时加塞了紧急任务怎么处理
git stash
git stash list 查看存起来的stash信息
git stash apply 可以反复查看保存的信息
git stash pop 丢掉stash保存的信息
29、如何指定不需要git管理的文件
.gitignore文件里写入不纳入版本控制系统中去
doc 是文件 doc/是 文件夹下的东西
30、git备份
哑协议 /path/to/repo.git
智能协议 file://path/to/repo.git
直观区别:哑 传输进度不可见
智能协议:可见
智能传输速度更快
平时接触到的智能协议 http/https 协议 http://git-server.com:port/path/to/repo.git
工作中最常用的智能协议 ssh协议 user@git-server.com:path/to/repo.git
git clone --bare(不带工作区的裸仓库) 路径/.git 别名 哑协议
git clone --bare(不带工作区的裸仓库) file://路径/.git 别名
git remote -v 查看远端
git remote add 智能 file://pwd/zhineng.git
git push 智能
git push --set-upstream 按提示设置 更新到远端
原文:https://www.cnblogs.com/dsw1207/p/12984982.html