Git 常用命令总结

双斜杠后为命令解释

git init //可以使当前文件夹变成git仓库
git add <file> //添加文件进入暂存区
git commit -m"xxx" //一次性把暂存区的所有修改提交到分支。-m后面为本次提交的说明

git status //查看当前仓库状态, 是否有文件被修改过等
git diff <file> //可以看到当前文件和仓库中的版本的区别

git log //显示从最近到最远的提交日志
git log --pretty=oneline //可以简化提交日志信息
git reflog //记录每一次的修改命令

git reset --hard HEAD^ //退回到上一个版本,上上个版本是HEAD^^,上100个版本是HEAD~100
git reset --hard <commit_id> //退回到指定的版本号

git checkout -- <file> //丢弃工作区的修改
git reset HEAD <file> //把暂存区的修改撤销掉

git rm <file> //删除文件

ssh-keygen -t rsa -C "youremail@example.com" //在电脑上创建SSH Key

git remote add origin git@server-name:path/repo-name.git//关联远程库
git push -u origin master //第一次推送master分支的所有内容
git push origin master //推送最新修改

git clone git@server-name:path/repo-name.git //从远程库克隆

git branch //查看分支
git branch <name> //创建分支
git checkout <name> //切换分支
git checkout -b <name> //创建+切换分支
git branch -d <name> //删除分支

git merge <name> //合并分支 如果合并失败需要手动解决冲突再提交
git log --graph --pretty=oneline --abbrev-commit //查看分支合并情况

git tag <name> (commit id) //新建一个标签 默认为HEAD,也可以制定commit id
git tag -a <tagname> -m "blablabla..." //可以指定标签信息
git tag -s <tagname> -m "blablabla..." //可以用PGP签名标签
git tag //查看所有标签

git push origin <tagname> //可以推送一个本地标签
git push origin --tags //可以推送全部未推送过的本地标签
git tag -d <tagname> //可以删除一个本地标签
git push origin :refs/tags/<tagname> //可以删除一个远程标签

posted @ 2016-12-03 11:14  llysrv  阅读(119)  评论(0编辑  收藏  举报