设置自己的用户名和邮箱
git config –global user.name "Your Name"
git config –global user.email "you@example.com"
修改到提交之间有一个缓存区
git add .
当前所有修改提交到缓存区,也可以单独指定git diff --cached
查看缓存区和本地仓库里的差异git diff HEAD
查看已缓存和当前的区别git diff
查看当前未缓存的和本地仓库里的区别git diff --stat
显示摘要撤销缓存区里的一个更改,例如hello.rb git reset HEAD -- hello.rb
git rm file
将file从文件缓存区、本地目录中移除
git rm file --cached
只从缓存区移除,保存本地目录中的
git branch
列出可用的分支git branch jser.me
创建jser.me分支git checkout -b jser.me
检查jser.me分支是否存在,不存在就创建,并且切换过去 git branch -d jser.me
删除分支jser.megit merge
其它分支合并到当前分支git checkout -b gh-pages origin/gh-pages
检出并且设置当前分支为远程分支gh-pages git log --oneline
紧凑查看git log --graph
图形显示git log erlang ^master
查看只在erlang分支里的修改git log --grep
正则取一个loggit shortlog master
生成一个简报git tag -a v1.0
打上v1.0git checkout commitid -- pathfile
git remote
列出远端的别名git remote add remotename remotepath
以remotename命名remotepathgit remote rm remotename
删除别名为remotename的远程仓库git fetch
只下载git pull
下载并更新git push remotename branch
推送本地分支branch到远程仓库remotename的branch分支新功能尽可能的开分支,但是定期合到master上来,不要把某一个分支长时间的开发 使用git-flow
找到冲突的地方,手工解决,然后git add filename; git commit
git cherry-pick #commitid
git checkout branch -- filename
git fetch origin master:temp
, 从远程的origin仓库的master分支下载到本地并新建一个分支tempgit diff temp
git branch -d temp
git diff 608e120 4abe32e --name-only
git diff 608e120 4abe32e --name-only | xargs zip update.zip
git log --since=1.days
git submodule foreach git pull origin master