git 常用命令小结

git使用小结

本地创建密钥

1
$ ssh-keygen -t rsa -C "xxxxxx@qq.com"

生成的密钥windows位于 C:\Users\Administrator.ssh,id_rsa是私钥文件 ,id_rsa.pub是公钥文件
linux密钥位于 /root/.ssh

常用命令

查看日志

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
$ git log
# 为了更友好的显示,使用下面的命令
$ alias gitlog="git log --all --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative"
$ gitlog
# 查看某文件更新历史
$ git log --pretty=oneline <文件名>
# 查看某文件的历史修改内容
$ git log -p <文件名>
# 查看某次提交更新内容
$ git show <commit版本号>
# 查看某次提交更新的文件
$ git show --name-only <commit版本号>
# 比较文件的修改
$ git diff <文件名>
# 比较两次提交有哪些修改
$ git diff <commit版本号> <commit版本号> [--stat]
# 注:版本号可以用 HEAD ,不加 `--stat` 是具体内容的修改

远程库

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 添加
$ git remote add [origin] <远程地址>
# 克隆
$ git clone <远程地址>
# 删除
$ git remote remove [origin]
# 查看
$ git remote get-url [origin]
# 更改
$ git remote set-url [origin] <远程地址>
# 创建远程版本库
$ git init --bare <sample.git>
# 拉取远程库
$ git pull [origin] [master]
# 推送到远程库
$ git push [origin] [master]

本地

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# 创建本地版本库
$ git init
# 查看状态
$ git status
# 添加
$ git add [文件名]
# 不加参数 -> 添加修改过和添加的文件(change|add)
# -A -> 添加修改过和删除过的文件(change|delete)
# -all -> 添加所有文件(change|delete|add)
# 提交文件
$ git commit -m "<说明>"
# 没有删除过文件,可以合并添加与提交为一步
$ git commit -am "<说明>"
# 撤销缓存区的某文件
$ git rm --cached <文件名>
# 撤销文件修改
$ git checkout -- <文件名>
# 若已添加到缓存区,则恢复到添加至缓存区之后的状态
# 若文件自修改后未添加至缓存区,则恢复到版本库状态
# 忽略文件权限的更改
$ git config core.filemode false
# 已经加入版本控制的文件强制忽略
$ git update-index --assume-unchanged <文件名>

参考链接

git版本管理策略及相关技巧