如何处理git多分支

news2024/11/16 13:33:20

本篇文章主要处理以下两种多分支问题

  1. 如何将自己在本地的修改上传到一个新的Git分支(比如用于测试,不合并进main分支)?
  2. 如何在一个新的本地仓库拉取一个项目的非main分支,并处理他们关联关系?

1. 将自己在本地的修改上传到一个新的Git分支。

1.1 切换到目标分支

(1) 首先可以确定一下当前本地的分支和远程的分支

# 查看本地分支
git branch

# 查看远程分支
git branch -r

# 查看所有分支
git branch -a

其中* 就代表自己目前所在的分支。

(2)比如本地和远程上都只有main,这时你只是想同步自己的实验性代码,并不想合并进main分支,那么此时我们可以先在本地新建一个名为experimental的分支并切换到新分支上:(如果分支已经存在,则不加-b,直接切换即可)

git checkout -b experimental

1.2 提交你的更改

git add .
git commit -m "Your commit message"

这里的 . 表示添加所有更改的文件,你也可以指定具体的文件。“Your commit message” 应该是一个描述你所做更改的信息。

1.3 推送到远程仓库

如果这是第一次将 experimental 分支推送到远程仓库,你需要使用 -u 参数来设置上游(远程)分支:

git push -u origin experimental

这将创建一个名为 experimental 的新分支在你的 GitHub 仓库中,并将你的本地更改推送到这个远程分支。-u 参数表示将本地分支与远程分支关联起来,以便于今后的推送和拉取操作。

如果远程仓库中已经有 experimental 分支,并且你之前已经设置了跟踪关系,那么你只需要简单地运行:

git push

接下来你就可以灵活地在本地进行分支的切换了(checkout),他们分别和远程上对应名字的分支对应。
在这里插入图片描述

2. 在一个新的本地仓库拉取一个项目的非main分支,并处理他们关联关系。

2.1 克隆仓库(如果尚未克隆)

如果你还没有克隆远程仓库,首先需要克隆它。使用 git clone 命令,加上仓库的 URL,以拉取FlexGen为例:

git clone https://github.com/Cheny1m/FlexGen.git

2.2 切换到你想要的分支(如 experimental) 分支

进入仓库目录:

cd FlexGen/

将 FlexGen 替换为你的仓库名。
然后,使用 git checkout -b 命令创建并切换到新的本地分支,同时设置其跟踪对应的远程分支:

git checkout -b experimental origin/experimental

2.3 拉取最新的更改

在新创建的分支上,你现在可以拉取最新的更改:

git pull 

在这里插入图片描述
同样的,你可以灵活地在本地进行分支的切换了(checkout),他们分别和远程上对应名字的分支对应。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1249134.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

智能条件单具体操作步骤,解放你投资双手!

一般我们说到量化交易都觉得很困难,写策略难,看python难,不会使用程序难,电脑交易不方便难,今天我们来看看手机电脑都可以使用的量化基础条件单的操作。迈入量化第一步,条件单的使用。 很多投资者不清楚条件…

C语言——输入一个4位正整数,输出其逆数。

#define _CRT_SECURE_NO_WARNINGS 1#include<stdio.h> int main() {int i,j 0;int a1,a2,a3,a4;printf("输入一个4位正整数&#xff1a;\n");scanf("%d",&i);a1 i/1000; a2 i/100%10; a3 i/10%10; a4 i%10; printf("千位a1%d,百位a…

SQL 语句 UNION 连接,查询字段数量必须一致

MySQL&#xff1a;The used SELECT statements have a different number of columns 执行SQL报错&#xff1a;The used SELECT statements have a different number of columns 以上翻译&#xff1a;使用的SELECT语句具有不同数量的列 原因&#xff1a;我们在 SQL 语句中使用…

Java 简单配置环境变量,切换多个jdk版本

文章目录 前言一、jdk下载二、配置环境变量三、查看jdk版本四、配置多个jdk五、切换jdk 前言 windows 配置jdk环境变量&#xff0c;如果项目没有规定使用的jdk版本的话&#xff0c;建议使用jdk8&#xff0c;这是最常用也是最稳定的版本 一、jdk下载 https://www.oracle.com/ja…

APP软件线上排查方法

在线上环境中排查APP软件的问题是一项关键任务&#xff0c;需要使用一系列方法和工具来识别、定位和解决问题。以下是一些建议的排查方法&#xff0c;希望对大家有所帮助。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 1.监控和日志…

38 关于 redo 日志

前言 undo 和 redo 是在 mysql 中 事务, 或者 异常恢复 的场景下面 经常会看到的两个概念 这里 来看一下 redo, redo 主要是用于 异常恢复 的场景下面 测试表结构如下 CREATE TABLE tz_test (id int(11) unsigned NOT NULL AUTO_INCREMENT,field1 varchar(128) DEFAULT NULL…

2023年【山东省安全员C证】考试试卷及山东省安全员C证考试试题

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2023年【山东省安全员C证】考试试卷及山东省安全员C证考试试题&#xff0c;包含山东省安全员C证考试试卷答案和解析及山东省安全员C证考试试题练习。安全生产模拟考试一点通结合国家山东省安全员C证考试最新大纲及山东…

测绘资质工程测量乙级资质办理条件

新测绘资质分为10个专业&#xff1a; 1.大地测量 2.测绘航空摄影 3.摄影测量与遥感 4.工程测量 5.海洋测绘 6.界线与不动产测绘 7.地理信息系统工程 8.地图编制 9.导航电子地图制作 10.互联网地图服务。 新《测绘资质管理办法》和《测绘资质分类分级标准》&#xff…

HTML5+CSS3+JS小实例:蜂巢里的小蜜蜂光标特效

实例:蜂巢里的小蜜蜂光标特效 技术栈:HTML+CSS+JS 效果: 源码: 【HTML】 <!DOCTYPE html> <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport" conten…

quickapp_快应用_DOM是否显示只能通过if指令!

目录 官网概念语法拓展使用三元表达式控制示例 官网 if指令 概念 if条件指令用于控制是否增加或者删除组件。 语法 <组件名 ifbol><组件名>上述语法中只要bol值为ture则显示该组件&#xff0c;若是bol值为false则不显示该组件(并将其从DOM结构中移除)。 拓展…

软件测试工程师如何从功能测试转自动化测试?

一、学习自动化之前&#xff0c;大家需要先知道自动化测试是啥&#xff1f; 自动化测试是将人为测试情形转化为机器执行的过程。一般说来&#xff0c;测试用例设计后&#xff0c;由测试员根据测试用例中描述的规则一步步地进行测试&#xff0c;得到测试结果和预期结果的行为。…

9.9 Windows驱动开发:内核远程线程实现DLL注入

在笔者上一篇文章《内核RIP劫持实现DLL注入》介绍了通过劫持RIP指针控制程序执行流实现插入DLL的目的&#xff0c;本章将继续探索全新的注入方式&#xff0c;通过NtCreateThreadEx这个内核函数实现注入DLL的目的&#xff0c;需要注意的是该函数在微软系统中未被导出使用时需要首…

Redis之高并发超卖问题解决方案

目录 1. Redis高并发超卖问题解决方案 1.1 高并发场景超卖bug解析 1.2 Redisson 1. Redis高并发超卖问题解决方案 在高并发的秒杀抢购场景中&#xff0c;常常会面临一个称为“超卖”&#xff08;Over-Selling&#xff09;的问题。超卖指的是同一件商品被售出的数量超过了实…

Guacamole简介及centos7下搭建教程

简介 Guacamole是一款开源的远程桌面框架&#xff0c;它允许用户通过Web浏览器远程访问计算机资源。 官网地址&#xff1a;Apache Guacamole™ 官方文档&#xff1a;Installing Guacamole natively — Apache Guacamole Manual v1.5.3 架构 组件描述客户端浏览器用户通过支…

WebSocket 鉴权策略与技巧详解

WebSocket 作为实时通信的利器&#xff0c;越来越受到开发者的青睐。然而&#xff0c;为了确保通信的安全性和合法性&#xff0c;鉴权成为不可或缺的一环。本文将深入探讨 WebSocket 的鉴权机制&#xff0c;为你呈现一揽子的解决方案&#xff0c;确保你的 WebSocket 通信得心应…

基础课10——自然语言生成

自然语言生成是让计算机自动或半自动地生成自然语言的文本。这个领域涉及到自然语言处理、语言学、计算机科学等多个领域的知识。 1.简介 自然语言生成系统可以分为基于规则的方法和基于统计的方法两大类。基于规则的方法主要依靠专家知识库和语言学规则来生成文本&#xff0…

卷积神经网络(CNN)识别验证码

文章目录 一、前言二、前期工作1. 设置GPU&#xff08;如果使用的是CPU可以忽略这步&#xff09;2. 导入数据3. 查看数据4.标签数字化 二、构建一个tf.data.Dataset1.预处理函数2.加载数据3.配置数据 三、搭建网络模型四、编译五、训练六、模型评估七、保存和加载模型八、预测 …

定时器详解

定时器是一种控制任务延时执行&#xff0c;或者周期执行的技术。 作用&#xff1a;闹钟、定时邮件发送。 定时器的两种实现方式&#xff1a;Timer 、ScheduledExecutorService。 Timer定时器 API public Timer() 创建Timer定时器对象&#xff0c;并启动线程。 public voi…

【五年创作纪念日】

机缘 我成为创作者的过程并不复杂&#xff0c;可以说是一个自然的发展。我是一名软件工程师&#xff0c;日常的工作主要是编程和解决问题。在工作的过程中&#xff0c;我发现有很多时候我需要查找一些特定的技术问题或者寻找一些最佳实践来解决我遇到的问题。在这个过程中&…

TransFusionNet:JetsonTX2下肝肿瘤和血管分割的语义和空间特征融合框架

TransFusionNet: Semantic and Spatial Features Fusion Framework for Liver Tumor and Vessel Segmentation Under JetsonTX2 TransFusionNet&#xff1a;JetsonTX2下肝肿瘤和血管分割的语义和空间特征融合框架背景贡献实验方法Transformer-Based Semantic Feature Extractio…