前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >冰河亲自整理的Git命令汇总(建议收藏)

冰河亲自整理的Git命令汇总(建议收藏)

作者头像
冰河
发布2022-06-15 17:03:24
3330
发布2022-06-15 17:03:24
举报
文章被收录于专栏:冰河技术

大家好,我是冰河~~

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

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

Git的安装

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

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

git bash是命令行工具

git gui是图形化工具

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

基本命令

配置用户名和邮箱

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

查看配置

代码语言:javascript
复制
git config --list --local
git config --list --global
git config --list --system

清除配置

代码语言:javascript
复制
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)

创建仓库

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

代码语言:javascript
复制
git init

添加文件至暂存区

代码语言:javascript
复制
git add 文件名

提交文件

代码语言:javascript
复制
git commit -m '描述'

查看git状态

代码语言:javascript
复制
git status

查看修改内容

代码语言:javascript
复制
git diff 文件名

修改文件名字

代码语言:javascript
复制
git mv 原文件名   新文件名

查看日志

代码语言:javascript
复制
功能为查看日志
git log

查看日志,以单行显示
git log --pretty=oneline

功能为查看历史操作记录,比如回退版本后想要重返“未来”可以查看最新的提交版本
git reflog

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

代码语言:javascript
复制
gitk

版本回退

代码语言:javascript
复制
退回到上一个版本
git reset --hard head

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

撤销操作

代码语言:javascript
复制
新版本git提示用该命令进行撤销
git restore 文件名

旧版本用此命令做撤销,新版本也可以用
git checkout – 文件名

如果已经add进暂存区
git restore --staged 文件名

新版本git用该命令此为旧版本git命令,新版本也可以用  
git reset head 文件名

删除文件

代码语言:javascript
复制
git rm -f 文件名  

使用分支

查看当前分支

代码语言:javascript
复制
git branch

创建dev分支并切换过去

代码语言:javascript
复制
-b表示创建并切换,相当于下面两条命令
git checkout -b dev

创建分支
git branch dev

切换分支
git checkout dev

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

代码语言:javascript
复制
switch
创建并切换到dev
git switch -c dev

直接切换到已有的dev分支
git switch dev

合并分支

代码语言:javascript
复制
将dev分支合并到当前分支,合并后会丢失原来分支的信息
git merge dev

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

删除分支

代码语言:javascript
复制
git branch -d dev
git branh -D dev

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

查看分支合并情况

代码语言:javascript
复制
git log --graph --pretty=oneline --abbrev-commit

stash的使用(bug分支)

代码语言:javascript
复制
保存当前的工作现场
git stash

查看所有被保存的工作
git stash list

恢复并删除工作现场,等价于git stash apply + git stash drop
git stash pop

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

代码语言:javascript
复制
git cherry-pick bug分支的提交版本号

远程克隆到本地

代码语言:javascript
复制
git clone 自己的git项目地址

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

关联

代码语言:javascript
复制
git remote add origin 自己的git项目地址

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

拉取远程的更新

代码语言:javascript
复制
git pull

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

基本推送

代码语言:javascript
复制
第一次推送是要加上-u,可以把本地的master和远程的master关联起来,方便以后的推送或者拉取
git push -u origin master

之后推送可以直接用该命令
git push origin master

查看远程仓库信息

代码语言:javascript
复制
git remote

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

多人协作

  • git checkout -b 分支名 origin/分支名,在本地创建和远程分支对应的分支,名称最好一致
  • git branch --set-upstream-to=origin/dev dev,建立本地分支和远程分支的关联
  • git pull,先抓取远程的更新,如果有冲突,手动解决冲突
  • git push origin 分支名,解决冲突后推送

标签

基本操作

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

代码语言:javascript
复制
查看所有标签
git tag

把当前分支的最新提交打上标签,标签名字自己起
git tag 标签名

把某个版本号的提交打上标签
git tag 标签名 对应commit版本号

可以用这种方式给标签增加说明,-a对应标签名,-m对应描述信息
git tag -a v0.1 -m “描述信息” 版本号

查看标签具体信息
git show 标签名

删除标签
git tag -d 标签名

推送标签

代码语言:javascript
复制
推送某个标签到远程
git push origin 标签名

推送所有标签到远程
git push origin --tags

删除远程标签:
先删除本地标签
git tag -d 标签名
 
然后从远程删除
git push origin: refs/tags/标签名

好了,今天就到这儿吧,我是冰河,我们下期见~~

冰河从一名普通程序员,短短几年时间,一路进阶成长为互联网高级技术专家,一直致力于分布式系统架构、微服务、分布式数据库、分布式事务与大数据技术的研究。在高并发、高可用、高可扩展性、高可维护性和大数据等领域拥有丰富的架构经验。对Hadoop,Storm,Spark,Flink等大数据框架源码进行过深度分析,并具有丰富的实战经验。

出版过三本畅销书《深入理解分布式事务:原理与实战》、《海量数据处理与大数据技术实战》、《MySQL技术大全:开发、优化与运维实战》。写了一本《深入理解高并发编程》电子书全网累计下载45W+,发布了一本全网首个开源的以实战案例为背景的《冰河的渗透实战笔记》电子书,全网五星好评。写的文章多次被微信公众号官方推荐。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-11-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 冰河技术 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Git的安装
  • 基本命令
    • 配置用户名和邮箱
      • 查看配置
        • 清除配置
          • 创建仓库
            • 添加文件至暂存区
              • 提交文件
                • 查看git状态
                  • 查看修改内容
                    • 修改文件名字
                      • 查看日志
                        • 通过可视化工具查看提交信息
                          • 版本回退
                            • 撤销操作
                              • 删除文件
                              • 使用分支
                                • 查看当前分支
                                  • 创建dev分支并切换过去
                                    • 合并分支
                                      • 删除分支
                                        • 查看分支合并情况
                                          • stash的使用(bug分支)
                                            • 远程克隆到本地
                                              • 关联
                                                • 拉取远程的更新
                                                  • 基本推送
                                                    • 查看远程仓库信息
                                                      • 多人协作
                                                      • 标签
                                                        • 基本操作
                                                          • 推送标签
                                                          相关产品与服务
                                                          大数据
                                                          全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
                                                          领券
                                                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档