0、设置用户名称和电子邮件地址
git config --global user.name "example"
git config --global user.email example@gmail.com
1、在工作目录中初始化新仓库
git init
2、从现有仓库克隆
git clone git://github.com/schacon/grit.git
3、从现有仓库克隆并重命名
git clone git://github.com/schacon/grit.git mygrit
4、检查当前文件状态
git status
5、跟踪新文件
git add README
6、暂存已修改文件
git add README
7、忽略某些文件:创建一个名为.gitignore的文件,列出要忽略的文件模式。例如:
$ cat .gitignore
*.[oa]
*~
8、查看尚未暂存的文件更新
git diff
9、查看已暂存的文件和上次提交时的快照之间的差异
git diff --cached
git diff --staged
10、提交更新
git commit
git commit -m "first commit"
11、暂存并提交
git commit -a -m 'added new benchmarks'
12、从工作目录中删除文件并移出暂存区,如果目标文件已修改并已经暂存,需加-f参数
git rm -f README
13、仅从跟踪清单中删除文件
git rm --cached readme.txt
14、递归删除当前目录及其子目录中所有~结尾的文件
git rm \*~
15、重命名文件并暂存
git mv file_from file_to
16、查看提交历史
git log
17、git log 参数含义
-p : 展开显示每次提交的内容差异
-2 : 仅显示最近的两次更新
--word-diff : 获取单词层面上的对比,在书籍、论文文件进行对比时非常有用
--stat : 仅显示简要的增改行数统计
--pretty : 指定格式展示提交历史, 例如:--pretty=oneline, --pretty=short, --pretty=full, --pretty=fuller, --pretty=format:"%h - %an, %ar : %s"
--since, --after : 仅显示指定时间之后的提交
--until, --before : 仅显示指定时间之前的提交
--author : 仅显示指定作者相关的提交
--committer : 仅显示指定提交者相关的提交
18、图形化界面查看提交历史
gitk
19、使用当前暂存区域覆盖最后一次提交
git commit --amend
20、取消已经暂存的文件
git reset HEAD benchmarks.rb
21、撤消工作区的修改
git checkout -- benchmarks.rb
22、回退到上一个版本
git reset --hard HEAD^
23、回退到某一版本
git reset --hard 8564333
24、查看所有操作记录
git reflog