本文最后更新于14 天前,其中的信息可能已经过时,如有错误请发送邮件到echobydq@gmail.com
前言
单纯的对一些经常用的 git
命令进行总结,方便以后查询使用,没啥营养
1. 基础
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 # 查看文件变化
2. 版本回退
git reset --hard HEAD^ # 恢复到上一个版本
git reset --hard HEAD~10 # 恢复到网上10个版本
git reset --hard commitID # 恢复到指定commit版本
3. 撤销修改
git restore <file> # 工作区
git restore --staged <file> # 暂存区,工作区需要执行上一步 add
git reset --hard HEAD^ # 工作区、暂存区、本地仓库都回退 commit
4. 删除文件
rm file
git add file
git commit -m ""
5. 分支操作
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 # 查看分支合并图
6. 保存和恢复
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 # 将一个或多个提交从一个分支应用到另一个分支
7. 多人协作
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的分叉提交历史整理成直线
8. 标签
标签总是和某个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都是直接百度哈哈哈从来记不住
一样一样,哈哈。不过感觉以后要经常用,就系统的学一下。话说好久没看你发文章了,太忙了吧~
用多了图形界面工具,这些命令是一点都记不住了(╯‵□′)╯︵┴─┴
哈哈,图形化可以更清楚过程,命令有时候比图形快点,各有好处~