git远程仓库分支推送与常见问题

news2024/11/15 23:39:18

1.查看远程仓库分支情况

git fetch origin
git branch -r

在这里插入图片描述

2.删除远程仓库中的某一分支(如master)

git push origin --delete master

在这里插入图片描述


问: 如果我的本地文件只有一个分支main,而远程仓库有两个分支Main和CubeMX, 若要将本地文件中新增的文件Test1.txt更改放入CubeMX中,是不是必须先拉取远程分支CubeMX到本地,然后才能推送到远程CubeMX?

是的,为了将本地 main 分支中新添加的 Test1 文件的更改合并到远程仓库的 CubeMX 分支,
你需要按照以下步骤操作:

1.拉取远程仓库的 CubeMX 分支

首先确保本地拥有远程仓库的 CubeMX 分支的最新版本。

git fetch origin CubeMX

如果你从未在本地创建过 CubeMX 分支,可以创建并切换到该分支,并与远程 CubeMX 分支关联:

2. 将本地CubeMX(前者)与远程CubeMX(后者)分支关联

git checkout -b CubeMX origin/CubeMX

将 main 分支的更改合并到 CubeMX 分支: 切换回 main 分支,确保 Test1 文件已经添加到暂存区并提交:

git checkout main
git add Test1.txt
git commit -m "Add Test1.txt to main"

3.将 main 分支的更改合并到 CubeMX 分支:

git checkout CubeMX
git merge main

推送到远程 CubeMX 分支

确认无误后,将 CubeMX 分支的更改推送到远程仓库:

git push origin CubeMX

这样,Test1.txt文件的更改就成功地被合并到了远程仓库的 CubeMX 分支上。


问:本地可以不创建分支,直接将本地main与远程CubeMX分支关联后,再将修改提交到CubeMX中吗?使用完后再取消关联,这样本地就不需要额外再创建main以外的分支了?

理论上是可以的,但实际操作并不建议这样做,因为这样可能会混淆本地分支和远程分支的职责。不过,如果你确实希望暂时将本地 main 分支的更改推送到远程 CubeMX 分支,并在操作完成后解除关联,可以采用以下方式:

将本地 main 分支与远程 CubeMX 分支关联: 首先,你需要在本地创建一个与远程 CubeMX 分支关联的新分支,这里我们只是暂时关联,操作完成后可以删除这个分支。

git fetch origin
git branch --set-upstream-to=origin/CubeMX main

将本地更改推送到远程 CubeMX 分支: 确保 Test1 文件已经被添加到暂存区并提交到本地 main 分支。

git add Test1
git commit -m "将新增Test1文件加入远程CubeMX分支"

然后,将本地 main 分支的更改推送到远程 CubeMX 分支。

git push

取消关联: 推送成功后,你可以解除 main 分支与远程 CubeMX 分支的关联。

git branch --unset-upstream

虽然这种方法可以避免在本地创建额外的分支,但容易让人误解本地 main 分支的角色,而且不利于长期维护和理解分支结构。最佳实践还是推荐在本地创建一个与远程 CubeMX 分支同名的分支,进行相关的操作,完成后可以根据需要删除这个临时分支。

4.直接在 CubeMX 分支上创建并提交 Test.txt 文件

切换到 CubeMX 分支:
如果本地还没有CubeMX分支,现从远程CubeMX拉取到本地

git fetch origin CubeMX

设置本地分支与远程分支的追踪关系: 设置本地 main 分支追踪远程 origin/main 分支:

git branch --set-upstream-to=origin/main main

或者当前分支已经是main分支,可以使用:
git branch -u origin/main

确保本地 main 分支包含远程仓库 main 分支的最新更改,直接拉取并合并:

git pull origin main

如果本地已经有了CubeMX分支且与远程CubeMX关联,直接切换到分支:

git checkout CubeMX

在 CubeMX 分支下创建并添加 Test.txt 文件到暂存区:

echo "Some content" > Test.txt
git add Test.txt

提交更改:

git commit -m "Add Test.txt to CubeMX"

推送到远程仓库:

git push origin CubeMX

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

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

相关文章

大数据开发-Hadoop分布式集群搭建

大数据开发-Hadoop分布式集群搭建 文章目录 大数据开发-Hadoop分布式集群搭建环境准备Hadoop配置启动Hadoop集群Hadoop客户端节点Hadoop客户端节点 环境准备 JDK1.8Hadoop3.X三台服务器 主节点需要启动namenode、secondary namenode、resource manager三个进程 从节点需要启动…

Linux操作系统项目上传Github代码仓库指南

文章目录 1 创建SSH key2.本地git的用户名和邮箱设置3.测试连接4.创建仓库5.终端项目上传 1 创建SSH key 1.登录github官网,点击个人头像,点击Settings,然后点击SSH and GPG keys,再点击New SSH key。 Title 可以随便取,但是 key 需要通过终端生成。 Linux终端执行…

窄带波束形成

阵列信号处理有以下三个研究方向: 检测入射信号是否存在,以及入射信号的数目检测入射信号的到达方向(DOA)角增强某个感兴趣方向的信号,抑制其他方向的干扰(beamforming) 波束形成(beamforming)…

福州·名城银河湾220㎡现代简约风装修案例分享。福州中宅装饰,福州装修

以手作维度构境, 跳脱约定成俗的风格, 转化内外地域分际, 于静谧中凝聚丰厚的美学能量, 谦虚且沉默以对。 平面设计图 项目信息 项目名称 | 名城银河湾 设计地址 | 福建福州 项目面积 | 220㎡ 项目户型 | 5室2厅2厨3卫 设计风格 | 现代轻奢 首席设计师丨欧阳光玉 中…

STM32 | STM32F407ZE(LED寄存器开发续第二天源码)

上节回顾 STM32 | STM32时钟分析、GPIO分析、寄存器地址查找、LED灯开发(第二天)STM32 | Proteus 8.6安装步骤(图文并茂)一、 LED灯开发 1、理解led灯原理图 LED0连接在PF9 PF9输出低电平(0),灯亮;PF9输出高电平(1),灯灭;(低电平有效) 2、打开GPIOF组时钟 //将…

随机输一次(Python3)

大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示: 现要求你编写一个控制赢面的程序,根据对方的出招,给出对应的赢招。但是!为了不让对方意识到你在控制结果,你需要隔 K …

网络安全相关证书有哪些?

从事于信息安全工作的人们,在面对繁杂问题的时候,往往会有焦虑和烦躁的表现。一部分可能来自于系统和流程的实际漏洞,一方面可能是自身的能力还有部分短板。许多人认为庞杂的问题或多或少的难以下手,如果有好的方式能够同时解决这…

Linux报错排查-刚安装好的ubuntu系统无法ssh连接

Linux运维工具-ywtool 目录 一.问题描述二.问题解决2.1 先给ubuntu系统配置阿里云源2.2 安装openssh-server软件2.3 在尝试ssh连接,可以连接成功了 三.其他命令 一.问题描述 系统:ubuntu-18.04-desktop-amd64 系统安装完后,想要通过xshell软件连接系统,发现能Ping通系统的IP,但…

计算布尔二叉树的值

题目 题目链接 . - 力扣(LeetCode) 题目描述 代码实现 class Solution { public:bool evaluateTree(TreeNode* root) {if(root->left nullptr && root->right nullptr) return root->val;bool left evaluateTree(root->left)…

CubeMX使用教程(6)——ADC模拟输出

本篇将利用CubeMX开发工具学习ADC(模拟输出)的使用 我们还是利用上一章的工程进行二次开发,这样方便 首先打开CubeMX进行相关配置 通过查看G431RBT6开发板有关模拟输出部分的原理图可知,模拟输出用到的IO口是PB15和PB12 接着我…

11、Linux-安装和配置Redis

目录 第一步,传输文件和解压 第二步,安装gcc编译器 第三步,编译Redis 第四步,安装Redis服务 第五步,配置Redis ①开启后台启动 ②关闭保护模式(关闭之后才可以远程连接Redis) ③设置远程…

接口自动化测试框架搭建:基于python+requests+pytest+allure实现

众所周知,目前市面上大部分的企业实施接口自动化最常用的有两种方式: 1、基于代码类的接口自动化,如: PythonRequestsPytestAllure报告定制 2、基于工具类的接口自动化,如: PostmanNewmanJenkinsGit/svnJme…

【Kotlin】类和对象

1 前言 Kotlin 是面向对象编程语言,与 Java 语言类似,都有类、对象、属性、构造函数、成员函数,都有封装、继承、多态三大特性,不同点如下。 Java 有静态(static)代码块,Kotlin 没有&#xff1…

和数软件:区块链技术的爆发与冲击

什么是区块链?它是如何发展而来的?应用在哪些领域?将会对我国的社会经济产生哪些重大影响? 什么是区块链 区块链作为一种底层技术,最早的实践是数字货币。根据最早的中本聪定义,区块链实质上是一种基于网…

人工智能|机器学习——Canopy聚类算法(密度聚类)

1.简介 Canopy聚类算法是一个将对象分组到类的简单、快速、精确地方法。每个对象用多维特征空间里的一个点来表示。这个算法使用一个快速近似距离度量和两个距离阈值T1 > T2 处理。 Canopy聚类很少单独使用, 一般是作为k-means前不知道要指定k为何值的时候&#…

借助产品说明书模板,让你轻松制作产品说明书

产品说明书是一种普遍存在的文档,在我们日常生活和工作中,您可能需要为自己的产品或服务创建一个。这是因为产品说明书是介绍产品特性、使用说明、维护方式以及注意事项等内容的有效工具。然而,制作产品说明书可能是一个复杂且困难的过程&…

Python实现一个简单的主机-路由器结构(计算机网络)

说明 本系统模拟实现了一个路由器与两个主机节点。该路由器将接收原始以太网帧,并像真正的路由器一样处理它们:将它们转发到正确的传出接口,处理以太网帧,处理 IPv4 分组,处理 ARP分组,处理 ICMP 分组&…

太阳辐射环境模拟系统系统

太阳辐射环境模拟系统是一种高度专业化的设备,用于模拟太阳光的全谱段辐射,包括紫外线、可见光和红外线。这种系统的核心功能是在实验室条件下复制太阳的辐射条件,以评估材料、产品或设备在实际太阳辐射影响下的性能和耐久性。 应用领域&…

2024-03-05 linux 分区老显示满,Use 100%,原因是SquashFS 是一种只读文件系统,它在创建时就已经被填满,所有空间都被使用。

一、这两天一直纠结一个问题,无论怎么修改,linux 分区老显示满,Use 100%,全部沾满。如下图的oem分区。 二、导致出现上面的原因是:SquashFS文件系统里的空间利用率总是显示为100%。 三、SDK里面也说明SquashFS文件系统…

【洛谷 P8668】[蓝桥杯 2018 省 B] 螺旋折线 题解(数学+平面几何)

[蓝桥杯 2018 省 B] 螺旋折线 题目描述 如图所示的螺旋折线经过平面上所有整点恰好一次。 对于整点 ( X , Y ) (X, Y) (X,Y),我们定义它到原点的距离 dis ( X , Y ) \text{dis}(X, Y) dis(X,Y) 是从原点到 ( X , Y ) (X, Y) (X,Y) 的螺旋折线段的长度。 例如 …