目录

一、Git常用命令

1、设置用户签名

2、初始化本地库

3、查看本地库状态

4、添加暂存区

5、提交本地库

6、修改文件

7、历史版本

7.1、查看历史版本

7.2、版本穿梭

二、Git分支操作

1、分支

2、分支的好处

3、分支的操作

3.1、查看分支

3.2、创建分支

3.3、修改分支

3.4、切换分支

3.5、合并分支

3.6、产生冲突

3.7、解决冲突

4、创建和切换分支原理


一、Git常用命令

命令名称 作用
git config --global user.name 用户名 设置用户签名
git config --global user.email 邮箱 设置用户签名
git init 初始化本地库
git status 查看本地库状态
git add 文件名 添加到暂存区
git commit -m "日志信息" 文件名 提交到本地库
git reflog 查看历史记录
git reset --hard 版本号 版本穿梭

1、设置用户签名

  • 基本语法:

    • git config --global user.name 用户名
    • git config --global user.email 邮箱

  • 说明

    • 签名的作用是区分不同操作者身份,用于确认提交是谁做的。
    • Git 首次安装必须设置一下用户签名,否则无法提交代码。
    • 这里设置用户签名和将来登录 GitHub(或其他代码托管中心)的账号没有任何关系

2、初始化本地库

  • 基本语法:

    • git init

  • 结果查看:

3、查看本地库状态

  • 基本语法:

    • git status

  • 操作说明

1、添加文件

2、查看本地库状态(工作区有文件,未添加至暂存区)

4、添加暂存区

  • 基本语法:

    • git add 文件名
  • 操作说明:

1、工作区文件添加至暂存区

2、查看状态(此时hello.txt已添加至暂存区)

git rm --cached 文件名:可以删除暂存区中的文件

5、提交本地库

  • 基本语法:

    • git commit -m "日志信息" 文件名
  • 操作说明:

1、将暂存区文件提交到本地库

2、查看状态(此时hello.txt已提交至本地库)

6、修改文件

  • 操作说明:

1、修改文件

2、查看状态 (检测到工作区有文件被修改)

3、修改后的文件添加至暂存区

4、查看状态(工作区的修改添加到了暂存区)

5、提交至本地库

6、查看状态(暂存区的修改提交至本地库)

7、查看版本信息

7、历史版本

7.1、查看历史版本

  • 基本语法:

    • git reflog 查看版本信息
    • git log 查看版本详细信息
  • 操作说明:

1、git reflog:版本号,指针指向

2、 git log:有了提交作者和提交时间

7.2、版本穿梭

  • 基本语法:

    • git reset --hard 版本号
  • 操作说明:

1、查看版本信息

2、版本号穿越

3、查看版本号信息(经过版本穿越)

  • 切换原理:Git 切换版本,底层其实是移动的 HEAD 指针,具体原理如下图所示。

二、Git分支操作

1、分支

在版本控制过程中,同时推进多个任务,为每个任务,就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。

2、分支的好处

  • 同时并行推进多个功能开发,提高开发效率。
  • 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。

3、分支的操作

命令名称 作用
git branch 分支名 创建分支
git branch -v 查看分支
git checkout 分支名 切换分支
git merge 分支名 把指定的分支合并到当前分支上

3.1、查看分支

  • 基本语法:

    • git branch -v
  • 操作说明:

3.2、创建分支

  • 基本语法:

    • git branch 分支名
  • 操作说明:

1、创建分支

2、查看分支

3.3、修改分支

  • 操作说明:

1、切换分支

2、修改文件

3、提交文件

3.4、切换分支

  • 基本语法:

    • git checkout 分支名
  • 操作说明:

3.5、合并分支

  • 基本语法:

    • git merge 分支名
  • 操作说明:

    • 在 master 分支上合并 hot-fix 分支

1、跳转至master分支

2、将hot-fix分支合并至master分支

3.6、产生冲突

  • 冲突产生的原因:
  • 合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。
  • Git 无法替我们决定使用哪一个,便会产生冲突,此时必须人为决定新代码内容。

  • 文件中冲突显示:

3.7、解决冲突

1)编辑有冲突的文件,删除特殊符号,决定要使用的内容

2)添加到暂存区

3)执行提交(注意:此时使用 git commit 命令时不能带文件名)

4)合并成功

4、创建和切换分支原理

  • master、hot-fix 其实都是指向具体版本记录的指针。
  • 当前所在的分支,其实是由 HEAD 决定的。所以创建分支的本质就是多创建一个指针。
    • HEAD 如果指向 master,那么我们现在就在 master 分支上。
    • HEAD 如果执行 hotfix,那么我们现在就在 hotfix 分支上。
    • 切换分支的本质就是移动 HEAD 指针。

Git命令及分支操作相关推荐

  1. git命令切换分支、更新分支

    1.查看分支: 命令:git branch -a $ git branch -amasterremotes/origin/20201228remotes/origin/HEAD -> origi ...

  2. git 命令删除分支

    git 命令删除分支 应用场景:有时我们已经在gitlab 或者 gitee 上面已经删除分支,但是本地编辑器 git branch 的时候依然有该分支,我们想删除:亦或者想在本地直接删除远程的分支 ...

  3. git命令进行分支合并

    方法1.使用git命令合并分支 1.使用命令查看当前所属分支 git branch 2.拉取项目最新的代码 git pull 3.将A分支的代码合并至B分支上 //首先切换分支到想合并的分支上 git ...

  4. git常用命令,分支操作,子模块

    Git 是一个很强大的分布式版本管理工具,它不但适用于管理大型开源软件的源代码(如:linux kernel),管理私人的文档和源代码也有很多优势(如:wsi-lgame-pro) 二. Git 常用 ...

  5. git branch常用分支操作

    文章目录 前言 远程仓库 建立联系 本地创建文件夹并进入 初始化仓库 临时插播好奇心(不在流程中) 查询远程仓库 与远程仓库建立对应关系 第一个分支 添加README文件 查询当前分支 将分支推送到远 ...

  6. Git 基础知识--分支操作

    分支操作 几乎所有的版本控制系统都支持分支.使用分支意味着你可以把你的工作从开发主线上分离出来,以免影响开发主线. 在分支中,在基于主分支已有代码的基础上,你可以进行任意的操作,并且完全不用担心会污染 ...

  7. 如何使用git命令从分支拉取代码到本地,修改后提取代码到该分支,看这一篇就够了!

    1. 前言 上一份工作在一家研究所,比较少用git命令进行操作,使用最多的是git clone操作,平时在github上的其他操作是使用界面进行实现.最近新换了一家企业,发现大家都在用git命令,今天 ...

  8. git 命令 clone分支的代码

    一个项目通常含有很多分支, master分支一般是经过测试,验证没有问题后,代码才会提交到master分支 develop分支,是测试经常拉下来进行测试的分支 直接复制develop分支的git 命令 ...

  9. 小黑抱紧沛奇老师课程的大腿,继续学习git的日常积累:沛奇老师git笔记(git命令与分支)

    课程链接 https://www.bilibili.com/video/BV1Ud4y1k715?p=4&vd_source=0b1383084f626b5cf37be3e82e883106 ...

最新文章

  1. 罗格斯大学电气与计算机工程专业怎么样,美国电子工程排名 - 电子计算机工程的研究生教育,特别是偏向电路设计方向,请问是美国罗格斯大学新布朗斯维克校区好还是清华...
  2. 常用的JVM参数,你现在就记好!
  3. 【通俗易懂】理解Python中的if __name__ == ‘__main__‘
  4. Unity URP中的多Pass Shader和Planer shadow
  5. [vue] 说说你对选项el,template,render的理解
  6. 有关于mysql自增型需要返回id_关于mysql自增id,你需要知道的
  7. 宇视摄像头ip搜索软件下载_搜索资源?下载资源?一款软件就给你安排的妥妥的...
  8. 体重测试java算法代码_标准体重计算示例代码
  9. 开源,如何以商业化模式打造万亿企业应用市场?
  10. 防空系统效能评估软件攻略
  11. WebGL白模做专题图注意事项
  12. 服务器运维故障处理案例
  13. 为什么再次调用编辑器总是加载同一张图片?
  14. 手把手带你从0搭建一个Golang ORM框架(全)!
  15. python安装PIL模块
  16. 135节---------4月11日
  17. 镭速传输流量版:随时开启企业大数据加速传输超能力
  18. 程序人生——苏嵌第三天
  19. 【Http】HTTP方法的安全性和幂等性
  20. 关于win10主机共享打印机,其他主机连接不上的解决方法①

热门文章

  1. 手把手教你调试构建一个Vue/小程序商城项目源码
  2. 开源的兰空图床LskyPro
  3. Quaternion-based Kalman Filtering on INS/GPS
  4. 成功改造企业文化的八项原则
  5. 数据库管理系统(DBMS)的功能
  6. cocos2d 更换皮肤
  7. Scratch教程——月亮公转和地球自转
  8. 虚拟机玩转 Veritas NetBackup(NBU)之 Windows 配置 NBU 客户端
  9. 【数字图像处理】实验五 形态学图像处理
  10. 基于BIM+GIS技术,如何构建智慧楼宇三维可视化管控平台?