比较好的教程
http://backlogtool.com/git-guide/cn/intro/intro1_2.html
1、git流程图
2、git 新建仓库
git init
git clone
3、git log git diff
文件开始是 untracked
git add后变成 staged
git diff 使用:
(1) git diff 不加参数,默认比较 工作目录(Working tree) 和 暂存区域快照(index) 之间的差异
(2) git diff --cached 比较 暂存区域快照(index) 和 上次提交(commit) 之间的差异
(3) git diff HEAD 比较 暂存区域快照(index) 和 上次提交(commit) 之间的差异
(4) git diff HEAD HEAD^ HEAD 表示commit的头,即当前commit HEAD^ 表示上一个commit HEAD~100 表示上100个commit
(5) git diff com1 com2
4、git reset 针对commit
git --amend --no-edit
git reset --hard HEAD
git reflog
git reset [--soft | --mixed | --hard
http://www.cnblogs.com/kidsitcn/p/4513297.html
5、git checkout 针对文件
git checkout HEAD/commitID -- file 将file回退到指定版本
git commit 将当前文件再次提交 新的历史
6、git 分支
git branch 显示分支信息
git branch dev 新建分支
git checkout dev 跳转到dev分支
git branch dev -d 删除分支
git checkout -b dev 新建分支dev,并且移动到dev分支上
git commit -am 添加并且提交
git merge branch1 将branch1分支合并到当前分支
git merge --no-ff branch1
--no-ff 不进行FasterForward 分支合并
7、git rebase
rebase比较危险 谨慎使用
8、stash