refer: http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
版本回退 git reset --hard 3628164 git reset --hard HEAD^ git reset --hard HEAD^^ git reset --hard HEAD~100 //倒数100个版本
查看提交日志: git log git log --graph --pretty=oneline --abbrev-commit
查看命令历史: git reflog
查看当前状态: git status
添加和提交 git add readme.txt git commit -m 'readme file add first' readme.txt
比较工作区和暂存区不同: git diff readme.txt git diff HEAD -- readme.txt
比较暂存区和本地版本库不同: git diff --cached HEAD readme.txt
工作区撤销修改: git checkout -- readme.txt
暂存区撤销修改: git reset HEAD readme.txt
远程仓库关联 git remote add origin git@server-name:path/repo-name.git
第一次推送master分支的所有内容 git push -u origin master
查看分支:git branch
创建分支:git branch
切换分支:git checkout
创建+切换分支:git checkout -b
合并某分支到当前分支: git merge dev //Fast forward模式合并 git merge --no-ff -m "merge with no-ff" dev //非Fast forward模式,分支保留成一个旧的版本,合并后的历史有分支,能看出来曾经做过合并
删除分支:git branch -d
当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场 你可以多次stash,恢复的时候,先用git stash list查看,然后恢复指定的stash,用命令: git stash apply stash@{0}
因此,多人协作的工作模式通常是这样:
首先,可以试图用git push origin branch-name推送自己的修改;
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
如果合并有冲突,则解决冲突,并在本地提交;
没有冲突或者解决掉冲突后,再用git push origin branch-name推送就能成功!
如果git pull提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name。
这就是多人协作的工作模式,一旦熟悉了,就非常简单
查看远程库信息,使用git remote -v;
本地新建的分支如果不推送到远程,对其他人就是不可见的;
从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;
在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;
从远程抓取分支,使用git pull,如果有冲突,要先处理冲突
命令git tag
git tag -a
git tag -s
命令git tag可以查看所有标签。
命令git push origin
命令git push origin --tags可以推送全部未推送过的本地标签;
命令git tag -d
命令git push origin :refs/tags/
忽略提交的文件信息文件 git check-ignore -v App.class //查看是否忽略提交
问题: git push -u origin master Warning: Permanently added the RSA host key for IP address '192.30.255.113' to the list of known hosts. Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. answer: 第1步:创建SSH Key。在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下>一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key: $ ssh-keygen -t rsa -C "[email protected]" 第2步:登陆GitHub,打开“Account settings”,“SSH Keys”页面: