介绍
上一篇博客介绍了git的基本使用方式,建议可以去阅读一下廖雪峰关于git的文章写的十分详细,并且通俗易懂,这篇博客主要是总结上一篇博客中用到的git命令,方便使用查询。
git常用命令小结
git命令大全
git命令 |
注释 |
git config --global user.name "Your Name" | 全局配置用户名 |
git config --global user.email "email@example.com" | 全局配置邮箱 |
git config user.name | 查询当前仓库的用户名 |
git config user.email | 查询当前用户的邮箱 |
ssh-keygen -t rsa -C "example@qq.com" | 生成ssh key,引号中的为你的邮箱 |
git init | 初始化一个Git仓库 |
git add readme.md | 添加一个文件到git暂存区,告诉git有修改文件需要提交至仓库 |
git add -A . | 一次添加所有改变的文件 |
git add -A | 添加所有内容 |
git add . | 添加新文件和编辑过的文件不包括删除的文件 |
git add -u | 添加编辑或者删除的文件,不包括新添加的文件 |
git commit readme.md -m "the first commit" | 将文件从暂存区提交至仓库 |
git status | 查询git仓库状态 |
git diff readme.md | 查看文件中具体修改的内容 |
git log | 查看提交日志 |
git log --graph --pretty=oneline --abbrev-commit | 查看分支的合并情况 |
git log --pretty=oneline | 查看commit的关键信息,主要有commitId和注释 |
git reset --hard HEAD~1 | 1代表往前回退一个版本,如果要回退100个版本,则为~100 |
git reset --hard HEAD^ | 作用同上,往前回退多少个版本,就写多少个^ |
git reflog | 查看之前所有命令操作,可以查询到已不存在的commit的id |
git reset --hard e30281f | 恢复之前回滚的commit,e30281f即为第二次的commitId |
git remote add origin git@github.com:shenyanfei/test-git.git | 将本地仓库与远程仓库进行关联 |
git remote | 查看远程仓库信息 |
git remote -v | 查看远程仓库信息(更详细) |
git push -u origin master | 从本地推送代码至远程(远程仓库为空) |
git push origin master | 从本地推送代码至远程(远程仓库不为空) |
git clone git@github.com:shenyanfei/test-git-pro.git | 克隆远程仓库代码至本地仓库 |
git pull origin master | 从远程仓库中更新代码(会将本地库更新至远程库的最新状态) |
git fetch origin master | 从远程仓库中更新代码(只会更新本地库所关联的远程库的commit id) |
git checkout -b dev | 创建并切换分支 |
git branch dev | 创建一个dev分支 |
git checkout dev | 切换至dev分支 |
git merge dev | 合并dev分支合并至master分支(假设在master分支上) |
git branch | 查看现有分支 |
git branch -d dev | 删除dev分支(已经被合并掉的分支) |
git branch -D dev | 强制删除没有被合并的分支 |
git rm test.txt | 删除版本库中的文件 |
git checkout -- test.txt | 恢复误删的文件(使用rm删除的文件,版本库中仍存在) |
git stash | 隐藏工作现场 |
git stash list | 查看隐藏的工作现场 |
git stash apply | 恢复隐藏的工作现场(恢复之后仍存在一份隐藏的工作现场) |
git stash apply stash@{0} | 恢复指定的隐藏的工作现场 |
git stash drop | 删除隐藏的工作现场 |
git stash pop | 恢复并删除隐藏的工作现场 |
git tag v1.0 | 打标签(对应最近一次的commit) |
git tag v1.0 e30281f | 打标签(指定一个commit) |
git tag -a v2.0 -m "version 2.0" e30281f | 打标签(给标签添加注释) |
git tag | 显示现有的标签 |
git show v1.0 | 显示该标签的信息 |
git tag -d v1.0 | 删除标签 |
git push origin v1.0 | 将标签推送至远程 |
git push origin --tags | 推送所有标签至远程 |
git push origin :refs/tags/v1.0 | 删除远程仓库中的标签 |
参考:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000
说明:本文为原创作品,若有参考会在文中提及,如有遗漏,涉及侵权,请联系本人,将立即修正。