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

git:分支

分支命名

  • 可以使用斜杠(/)构建分层命名方案
  • 不能以减号(-)开头,分层的命名不能以点(.)开头
  • 不能使用连接两个点(.)
  • 不能包括空格或其他空白字符以及~ ^ : ? * [

列出分支名称 

  • git branch         列出本地版本库的分支
  • git branch -r     列出远程跟踪分支
  • git branch -a     列出本地版本库的分支和远程跟踪分支

查看分支提交

  • git show-branch     列出本地版本库的分支
  • git show-branch -r  列出远程版本库分支
  • git show-branch -a  列出本地版本库的分支和远程版本库分支
  • git show-branch 分支名    列出指定分支的提交,可以使用一组分支名或通配符*

创建分支

git branch 分支名称 {starting-commit}

  • 在指定的提交上创建一个命名分支
  • 若不指定提交,默认使用当前分支上的最近提交
  • 仅创建分支,不改变工作目录

检出分支

git checkout 分支名称

  • 将HEAD指向检出分支
  • 将索引重置为检出分支最新提交点
  • 更新工作目录

检出时工作目录变更

未跟踪的文件:

  • 在检出分支中不存在,保留不变
  • 在检出分支中存在(即使内容一样),警告并阻止检出分支

已跟踪-已提交过的文件:已修改且已提交  或 未修改

  • 在检出分支不存在,从工作目录和暂存区删除
  • 在检出分支中存在,使用检出分支的版本替换工作目录和暂存区版本

已跟踪-已提交过的文件:已修改且未提交

  • 警告并阻止检出分支

已跟踪-从未提交过的文件(当前分支的任何提交内都无此文件版本)

  • 工作目录和暂存区保留不变

处理方式:

  •     提交变更到当前分支
  •     合并变更到检出分支:git checkout -m

无头状态

HEAD指针直接指向一个提交,而不是一个分支的名称。
什么情况下处于无头状态:

  • 检出不是分支头部的提交:git checkout 提交
  • 检出标签引用的提交

影响:

  •     可以正常提交,但没有分支记录,
  •     当再使用git checkout branch检出分支后,该提交会丢失
  •     可以使用git checkout -b new_branch新建个分支记录此提交

删除分支

git branch -d 分支名称

  • 技术上仅仅删除了分支名称(指向分支最近的提交)
  • 不允许删除当前分支
http://www.xdnf.cn/news/17595.html

相关文章:

  • 提示词工程实战:用角色扮演让AI输出更专业、更精准的内容
  • 软件测评中HTTP 安全头的配置与测试规范
  • 数据变而界面僵:Vue/React/Angular渲染失效解析与修复指南
  • 基于 Axios 的 HTTP 请求封装文件解析
  • Console Variables Editor插件使用
  • 音视频学习(五十三):音频重采样
  • QT QProcess + xcopy 实现文件拷贝
  • Web安全自动化测试实战指南:Python与Selenium在验证码处理中的应用
  • Mybatis @Param参数传递说明
  • 【工作笔记】Wrappers.lambdaQuery()用法
  • RK3588在YOLO12(seg/pose/obb)推理任务中的加速方法
  • JS数组排序算法
  • 打靶日常-upload-labs(21关)
  • 【密码学】8. 密码协议
  • Android 开发问题:Invalid id; ID definitions must be of the form @+id/ name
  • 【系统分析师】软件需求工程——第11章学习笔记(上)
  • A#语言详解
  • GitHub上为什么采用Gradle编译要多于Maven
  • 【走进Docker的世界】深入理解Docker网络:从模式选择到实战配置
  • AI质检数据准备利器:基于Qt/QML 5.14的图像批量裁剪工具开发实战
  • 【代码随想录day 15】 力扣 404. 左叶子之和
  • nginx+Lua环境集成、nginx+Lua应用
  • 自动化备份全网服务器数据平台
  • UE材质World Position 和 Object Position
  • Linux操作系统从入门到实战(十七)进程与进程基本概念
  • Redis一站式指南一:从MySQL事务到Redis持久化及事务实现
  • Error: error:0308010C:digital envelope routines::unsupported at new Hash
  • 计算机视觉(CV)——pytorch张量基本使用
  • 青龙峡拔韭菜
  • 【东枫科技】NTN-IOT 卫星互联网原型系统,高达1.6G大带宽