Git

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
1. 查看配置信息
git config -l # 查看所有配置
git config --system --list # 查看系统配置
git config --global --list # 查看当前用户(global)配置
git config --local --list # 查看repository配置


2. 第一次配置
git config --global user.name "kuangshen" # 用户名
git config --global user.email 24736743@qq.com # 邮箱


3. 其他配置
配置解决冲突时使用哪种差异分析工具,比如要使用vimdiff:
git config --global merge.tool vimdiff;
配置git命令输出为彩色的:git config --global color.ui auto;
配置git使用的文本编辑器:git config --global core.editor vi


4. 新建仓库
git init # 在当前目录初始化仓库
git clone [url] # 克隆远程仓库
git clone git://github.com/wasd/example.git mygit
# 定义新的项目名


5. 查看文件状态
git status # 查看所有文件状态
git status [filename] # 查看文件状态
git diff # 比较暂存区与工作区文件差异
git diff <filename> # 指定文件


6. 提交到暂存区
git add . # 添加所有文件到暂存区
git add <file1> <file2> ... # 添加指定文件
git add [dir] # 提交文件夹
git commit -m "Remarks" # 提交暂存区中的内容到本地仓库 -m 提交信息


7. 撤销
git rm <file1><file2> # 删除暂存区文件,删除工作区文件
git rm --cached <file> # 删除暂存区文件,保留工作区文件
git reset HEAD <file> # 取消暂存区的暂存文件


8. 本地仓库的操作
git remote # 本地repo关联的远程仓库,远程仓库默认为origin,加上-v会显示远程仓库url

git remote add [remote-name] [url]
git remote add example git://github.com/example/example.git
# 关联远程仓库

git push [remote-name] [branch-name] # 把本地repo push到 remote repo上
git remote show origin # 查看远程仓库的详细信息
git remote rm [remote-name] #

git pull --rebase origin master # pulll=fetch+merge

.gitignore

*.txt # 忽略所有.txt结尾文件
!lib.txt # 不忽略lib.txt
/temp # 仅忽略根目录下的temp
build/ # 忽略build/下的所有文件
doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt