当前位置: 首页 > news >正文

git常用命令及git分支

git常用命令及git分支

    • git常用命令
      • 设置用户签名
      • 初始化本地库
      • 查看本地库状态
      • 将文件添加到暂存区
      • 提交到本地库
      • 查看历史记录
      • 版本穿梭
    • git分支
      • 什么是分支
      • 分支的好处
      • 分支的操作
        • 查看分支
        • 创建分支
        • 切换分支
        • 删除分支
        • 合并分支
        • 合并冲突

git常用命令

设置用户签名

//设置用户签名
git config --global user.name <用户名>git config --global user.email <邮箱>

初始化本地库

//初始化本地库 文件目录是:/g/git-space/git-demo
git init

在这里插入图片描述

查看本地库状态

//查看本地库状态
git status

在这里插入图片描述

这里在工作区创建了一个xx.txt的文件,查看状态时文件名变红,说明文件未添加到暂存区

将文件添加到暂存区

//将文件添加到暂存区
git add <file>

在这里插入图片描述

从暂存区删除文件(但是工作区不会删除):

git rm --cached <files>

提交到本地库

//提交到本地库
git commit -m "日志信息" <files>

在这里插入图片描述

查看历史记录

//查看历史记录
1.git reflog
2.git log

在这里插入图片描述

版本穿梭

git reset --hard <版本号(精简)>

git分支

什么是分支

在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。对于初学者而言,分支可以简单理解为副本,一个分支就是一个单独的副本。(分支底层其实也是指针的引用)

分支的好处

同时并行推进多个功能开发,提高开发效率。

各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。

分支的操作

查看分支
 git branch -v

在这里插入图片描述

创建分支
git branch 分支名

在这里插入图片描述

切换分支
git checkout 分支名

在这里插入图片描述

在hot-fix分支上修改文件并且提交

在这里插入图片描述

删除分支
git checkout -b 分支名 //切换并创建分支
git branch -d 分支名 //删除分支,需要做检查
git branch -D 分支名 //删除分支,不需要做检查
合并分支

将hot-fix合并到master

首先回到master分支

在这里插入图片描述

执行命令

git merge hot-fix

在这里插入图片描述

合并冲突

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

修改master中的xx.txt,然后提交

在这里插入图片描述

切换分支hot-fix

在这里插入图片描述

在分支hot-fix上修改xx.txt,然后回到master

在这里插入图片描述

此时合并hot-fix会产生冲突

在这里插入图片描述

打开xx.txt

在这里插入图片描述

手动修改包括符号在内的多余内容

在这里插入图片描述

重新添加到暂存区

在这里插入图片描述

重新提交(注意此时提交不要加文件名)

在这里插入图片描述

查看结果

在这里插入图片描述

注意在hot-fix分支上还是原来的内容并未修改

在这里插入图片描述

http://www.lryc.cn/news/400864.html

相关文章:

  • c# 依赖注入-服务的生命周期
  • 一站式短视频矩阵开发,高效托管!
  • 实践致知第16享:设置Word中某一页横着的效果及操作
  • Leetcode—3011. 判断一个数组是否可以变为有序【中等】(__builtin_popcount()、ranges::is_sorted())
  • 盲盒一番赏小程序:开启惊喜之旅,探索无限创意!
  • Linux基础知识之Linux文件系统权限
  • Qt qml详细介绍
  • 深度解析:如何优雅地删除GitHub仓库中的特定commit历史
  • JS之短路操作符
  • 【Linux】安装PHP扩展-redis
  • 内衣洗衣机怎么选?分享五款人气巅峰机型,选对不选贵
  • OpenMesh入门,安装,运行示例Hello World
  • std::env是什么库?|Python一对一教学答疑
  • Go语言--广播式并发聊天服务器
  • Spring MVC 全注解开发
  • MQTT——Mosquitto使用(Linux订阅者+Win发布者)
  • ArcGIS识别不GDB文件地理数据库显示为空?
  • uniapp微信小程序 TypeError: $refs[ref].push is not a function
  • Django任务管理
  • Hive 常见问题
  • 51单片机(STC8H8K64U/STC8051U34K64)_RA8889驱动大屏_硬件SPI4_参考代码(v1.3)
  • 实习随笔【前端技术实现全局添加水印】
  • 【软件测试】编写测试用例篇
  • 转型AI产品经理需要掌握的硬知识(二):AI常见概念和算法梳理
  • mysql-connector-java 8.0.33 反序列化漏洞
  • 基于Faster R-CNN的安全帽目标检测
  • linux中vim切换输入中文
  • 嵌入式C++、Qt/QML和MQTT:智能工厂设备监控系统的全流程介绍(附代码示例)
  • 监控易V7.6.6.15升级详解8:机房动环管理功能
  • C++ | Leetcode C++题解之第232题用栈实现队列