> 文档中心 > 520,冰河亲自整理的Git命令汇总升级版,悄悄努力,然后惊艳所有人(升级版)

520,冰河亲自整理的Git命令汇总升级版,悄悄努力,然后惊艳所有人(升级版)

大家好,我是冰河~~

Git目前是各大互联网公司使用的版本控制工具,进大厂,必须要学会Git的基本使用。这不,最近就有很多小伙伴私信我:冰河,可以帮我整理下Git的使用命令吗?网上的太零散了,买书看又没时间。我:可以啊!

于是乎,我熬夜整理了这篇文章。这篇文章主要是汇总讲解Git的使用命令。

Git的安装

通过 https://git-scm.com/downloads ,git官网下载需要的版本,一路下一步安装即可

装好后,在电脑文件夹的任意位置右键,即可看到git相关的命令。

git bash是命令行工具

git gui是图形化工具

打开git bash后,输入git --version ,能正确输出版本号,则证明安装成功。

基本命令

配置用户名和邮箱

git config --global [user.name](http://user.name) ‘自己的名字’git config --global [user.name](http://user.name) ‘自己的邮箱’
  • local 只对当前仓库有效
  • global 所有仓库有效
  • system 对系统所有用户有效

查看配置

git config --list --localgit config --list --globalgit config --list --system

清除配置

git config --unset --local [user.name](http://user.name)git config --unset --global [user.name](http://user.name)git config --unset --system [user.name](http://user.name)

创建仓库

进入要被托管的文件夹,执行

git init

添加文件至暂存区

git add 文件名

提交文件

git commit -m '描述'

查看git状态

git status

查看修改内容

git diff 文件名

修改文件名字

git mv 原文件名   新文件名

查看日志

功能为查看日志git log查看日志,以单行显示git log --pretty=oneline功能为查看历史操作记录,比如回退版本后想要重返“未来”可以查看最新的提交版本git reflog

通过可视化工具查看提交信息

gitk

版本回退

退回到上一个版本git reset --hard head当知道对应的版本号时,可以用这个命令,适用于回退和前往之前的新版本git reset --hard 版本号

撤销操作

新版本git提示用该命令进行撤销git restore 文件名旧版本用此命令做撤销,新版本也可以用git checkout – 文件名如果已经add进暂存区git restore --staged 文件名新版本git用该命令此为旧版本git命令,新版本也可以用  git reset head 文件名

删除文件

git rm -f 文件名  

使用分支

查看当前分支

git branch

创建dev分支并切换过去

-b表示创建并切换,相当于下面两条命令git checkout -b dev创建分支git branch dev切换分支git checkout dev

注意:上面是老版本的命令,创建分支和撤销都用checkout容易分不清,因此新版本创建分支推荐用

switch创建并切换到devgit switch -c dev直接切换到已有的dev分支git switch dev

合并分支

将dev分支合并到当前分支,合并后会丢失原来分支的信息git merge dev合并dev到当前分支,–no-ff表示禁用fast forwad,之后查看日志时是可以看到已被删除分支的信息git merge --no-ff -m “merge with no-ff” dev

删除分支

git branch -d devgit branh -D dev

如果dev没有被合并过用大写 -D

查看分支合并情况

git log --graph --pretty=oneline --abbrev-commit

stash的使用(bug分支)

保存当前的工作现场git stash查看所有被保存的工作git stash list恢复并删除工作现场,等价于git stash apply + git stash dropgit stash pop

开发环境在dev分支下,bug修复是提交在master中,如何快速合并至dev下:转移至dev分支下,执行下面命令

git cherry-pick bug分支的提交版本号

远程克隆到本地

git clone 自己的git项目地址

如果是本地没有项目,从远程往下拉项目则是克隆

关联

git remote add origin 自己的git项目地址

如果本地先建好了项目,那么执行这个命令将本地仓库与远程仓库关联

拉取远程的更新

git pull

第一和远程关联上之后,在提交之前要先拉去一下远程的更新才行

基本推送

第一次推送是要加上-u,可以把本地的master和远程的master关联起来,方便以后的推送或者拉取git push -u origin master之后推送可以直接用该命令git push origin master

查看远程仓库信息

git remote此命令可显示更详细信息git remote -v

多人协作

  • git checkout -b 分支名 origin/分支名,在本地创建和远程分支对应的分支,名称最好一致

  • git branch --set-upstream-to=origin/dev dev,建立本地分支和远程分支的关联

  • git pull,先抓取远程的更新,如果有冲突,手动解决冲突

  • git push origin 分支名,解决冲突后推送

标签

基本操作

标签的作用可以简单理解为给版本起名字

查看所有标签git tag把当前分支的最新提交打上标签,标签名字自己起git tag 标签名把某个版本号的提交打上标签git tag 标签名 对应commit版本号可以用这种方式给标签增加说明,-a对应标签名,-m对应描述信息git tag -a v0.1 -m “描述信息” 版本号查看标签具体信息git show 标签名删除标签git tag -d 标签名

推送标签

推送某个标签到远程git push origin 标签名推送所有标签到远程git push origin --tags删除远程标签:先删除本地标签git tag -d 标签名然后从远程删除git push origin: refs/tags/标签名

写在最后

如果你想进大厂,想升职加薪,或者对自己现有的工作比较迷茫,都可以私信我交流,希望我的一些经历能够帮助到大家~~

推荐阅读:

  • 《实践出真知:全网最强秒杀系统架构解密,不是所有的秒杀都是秒杀!!》
  • 《从零到上亿用户,我是如何一步步优化MySQL数据库的?(建议收藏)》
  • 《我用多线程进一步优化了亿级流量电商业务下的海量数据校对系统,性能再次提升了200%!!(全程干货,建议收藏)》
  • 《我用多线程优化了亿级流量电商业务下的海量数据校对系统,性能直接提升了200%!!(全程干货,建议收藏)》
  • 《我用10张图总结出了这份并发编程最佳学习路线!!(建议收藏)》
  • 《高并发场景下一种比读写锁更快的锁,看完我彻底折服了!!(建议收藏)》
  • 《全网最全性能优化总结!!(冰河吐血整理,建议收藏)》
  • 《三天撸完了MyBatis,各位随便问!!(冰河吐血整理,建议收藏)》
  • 《奉劝那些刚参加工作的学弟学妹们:要想进大厂,这些并发编程知识是你必须要掌握的!完整学习路线!!(建议收藏)》
  • 《奉劝那些刚参加工作的学弟学妹们:要想进大厂,这些核心技能是你必须要掌握的!完整学习路线!!(建议收藏)》
  • 《奉劝那些刚参加工作的学弟学妹们:这些计算机与操作系统基础知识越早知道越好!万字长文太顶了!!(建议收藏)》
  • 《我用三天时间开发了一款老少皆宜的国民级游戏,支持播放音乐,现开放完整源代码和注释(建议收藏)!!》
  • 《我是全网最硬核的高并发编程作者,CSDN最值得关注的博主,大家同意吗?(建议收藏)》
  • 《毕业五年,从月薪3000到年薪百万,我掌握了哪些核心技能?(建议收藏)》
  • 《我入侵了隔壁妹子的Wifi,发现。。。(全程实战干货,建议收藏)》
  • 《千万不要轻易尝试“熊猫烧香”,这不,我后悔了!》
  • 《清明节偷偷训练“熊猫烧香”,结果我的电脑为熊猫“献身了”!》
  • 《7.3万字肝爆Java8新特性,我不信你能看完!(建议收藏)》
  • 《在业务高峰期拔掉服务器电源是一种怎样的体验?》
  • 《全网最全Linux命令总结!!(史上最全,建议收藏)》
  • 《用Python写了个工具,完美破解了MySQL!!(建议收藏)》
  • 《SimpleDateFormat类到底为啥不是线程安全的?(附六种解决方案,建议收藏)》
  • 《MySQL 8中新增的这三大索引,直接让MySQL起飞了,你竟然还不知道!!(建议收藏)》
  • 《撸完Spring源码,我开源了这个分布式缓存框架!!(建议收藏)》
  • 《亿级流量高并发秒杀系统商品“超卖”了,只因使用的JDK同步容器中存在这两个巨大的坑!!(踩坑实录,建议收藏)》
  • 《奉劝那些刚参加工作的学弟学妹们:要想学好并发编程,这些并发容器的坑是你必须要注意的!!(建议收藏)》
  • 《公司的报表工具太难用,我三天撸了个Excel工具,运营小姐姐直呼太好用了,现已开源!!(建议收藏)》
  • 《奉劝那些刚参加工作的学弟学妹们:要想进大厂,这些并发编程核心技能是你必须要掌握的!!(建议收藏)》
  • 《阿里面试官:高并发大流量秒杀系统如何正确的解决库存超卖问题?(建议收藏)》
  • 《Redis五大数据类型与使用场景汇总!!(含完整实战案例,建议收藏)》

好了,今天就到这儿吧,小伙伴们点赞、收藏、评论,一键三连走起呀,我是冰河,我们下期见~~