本文最后更新于 297 天前,其中的信息可能已经过时,如有错误请发送邮件到 echobydq@gmail.com
单纯的对一些经常用的 git
命令进行总结,方便以后查询使用,没啥营养

| git add <file> # 提交到 暂存区 |
| |
| git commit -m "commnet" # 提交到 版本库 |
| |
| git branch -M main # 重新命名分支 |
| |
| git remote add origin # 添加远程仓库 |
| |
| git pull origin master # 从名为 origin 的远程仓库的 master 分支拉取最新的提交,并将其合并到当前分支 |
| |
| git push origin main # 将本地仓库的文件push到远程仓库(若 push 不成功,可加 -f 进行强推操作) |
| |
| git diff read.txt # 查看文件变化 |
| git reset --hard HEAD^ # 恢复到上一个版本 |
| git reset --hard HEAD~10 # 恢复到网上10个版本 |
| git reset --hard commitID # 恢复到指定commit版本 |
| git restore <file> # 工作区 |
| git restore --staged <file> # 暂存区,工作区需要执行上一步 add |
| git reset --hard HEAD^ # 工作区、暂存区、本地仓库都回退 commit |
| rm file |
| git add file |
| git commit -m "" |
| git branch test # 创建分支 test |
| git branch # 查看当前分支 |
| git switch -c test # 创建test分支,然后切换到test分支 git branch test git checkout test |
| git switch master # 切换 |
| git merge test # 合并指定分支到当前分支 |
| git merge --no-ff -m "no-ff" test # 禁用快进(fast-forward)合并,强制创建一个新的合并提交 |
| git branch -d test # 删除分支 |
| git branch -D test # 强制删除 |
| git log --graph # 查看分支合并图 |
| git stash save "Your stash message" # 保存工作进度 |
| git stash list # 查看 stash 列表 |
| git stash apply [<stash-index>] # 应用 |
| git stash drop [<stash-index>] # 删除 |
| git stash pop [<stash-index>] # 应用并删除 |
| |
| git cherry-pick # 将一个或多个提交从一个分支应用到另一个分支 |
| git remote -v # 查看远程库的信息 |
| git switch -c dev origin/dev # 本地创建一个新分支 dev,并将其设置为跟踪远程仓origin/dev 分支 |
| git branch -u origin/dev dev # 本地分支 dev 设置为跟踪远程仓库的 origin/dev 分支 |
| git push origin master # 将本地仓库文件push到远程(若push不成功,可加-f进行强推) |
| git pull origin master # 从远程仓库origin的master分支拉取最新提交,并将其合并到当前分支 |
| git rebase # 把本地未push的分叉提交历史整理成直线 |
标签总是和某个 commit 挂钩。如果这个 commit 既出现在 master 分支,又出现在 dev 分支,那么在这两个分支上都可以看到这个标签。
| git tag v1.0 # 打一个新标签V1.0,默认是打在最新提交的commit上 |
| git log --pretty=oneline --abbrev-commit # 每一行包含了一个提交的简略哈希和提交信息 |
| git tag v0.9 f52c633 # 在特点commit上打标签 |
| git tag -a v0.1 -m "v0.1 released" 1094adb # 创建带有说明的标签,用-a指定标签名,-m指定说明文字 |
| git tag # 查看所有标签 |
| git show v0.9 # 查看标签信息,标签不是按时间顺序列出,而是按字母排序 |
| |
| git tag -d v0.1 # 删除标签 |
| git push origin v1.0 # 推送标签到远程 |
| git push origin --tags # 一次性推送全部尚未推送到远程的本地标签 |
| git push origin -d tag tagName # 删除一个远程标签 |
| git ls-remote --tags origin # 查看删除远程tags执行效果 |
好厉害
谢谢~
确实需要好好整理下,不然每次都得查阅,学习了
感谢分享
还有git代理的命令,git config –global http.proxy http://127.0.0.1:7890
这个是最重要的
不然连不上啊~
好常用的命令,但是记不住,哈哈哈哈
是滴,所以得天天敲了~
北京妹子好看哦
哈哈,还疑惑怎么看出来是北京的~
毕竟背景代表博客门面,肯定得beautiful点~
码住,每次要用git都是直接百度哈哈哈从来记不住
一样一样,哈哈。不过感觉以后要经常用,就系统的学一下。话说好久没看你发文章了,太忙了吧~
用多了图形界面工具,这些命令是一点都记不住了(╯‵□′)╯︵┴─┴
哈哈,图形化可以更清楚过程,命令有时候比图形快点,各有好处~