问题背景

我在使用 Git 进行开发时,由于原有的主分支遭到了污染,不得已在多方尝试之后,决定替换原有的主分支。创建一个新分支并完成了重要修改:

  1. 基于提交 0fcb6df0f5e8caa3d853bb1f43f23cfe6d269b18 创建了 new-development 分支
  2. 在该分支上提交了重要的修改内容(提交ID b82fd7b9c9c85bd4e063eb096a9d7b92e9a79b76
  3. 需要将 new-development 分支设为主分支,并将原 master 分支作为存档分支

在操作过程中,笔者遇到了远程仓库配置问题:本地仓库没有配置 origin 远程,而是配置了多个其他别名的远程仓库,特别是中文别名的 我的测试项目二期 远程仓库。

完整解决方案

第一步:确认当前仓库状态

首先查看本地分支情况:

git branch -v

输出应包含:

  master                [原主分支]
* new-development       b82fd7b9 [您的新提交]old-master            [已重命名的旧分支]

第二步:重命名分支(本地操作)

  1. 重命名原主分支为存档分支:
git branch -m master old-master
  1. 切换到新开发分支:
git checkout new-development
  1. 将此分支设为主分支:
git branch -m master

第三步:解决远程仓库配置问题

通过命令分析远程配置:

git remote -v

输出显示存在多个远程别名:

old-origin      https://github.com/Alex-zry-2333/DiMian.git
zrygit          https://github.com/Alex-zry-2333/DiMian.git
我的测试项目二期 http://10.10.1.60/Alex_zry_2333/DiMianErQi.git

由于您指定要将更改推送到 我的测试项目二期,我们将以此为目标:

第四步:推送到目标远程仓库

  1. 强制推送新主分支:
# 注意使用引号包裹包含空格的远程名称
git push -f "我的测试项目二期" master
  1. 推送存档分支:
git push "我的测试项目二期" old-master

第五步:清理其他远程引用(可选)

  1. 删除其他仓库的原主分支:
# 清理GitHub远程
git push old-origin --delete master
git push zrygit --delete master
  1. 清理无效远程别名:
git remote remove old-origin
git remote remove zrygit

第六步:验证配置

  1. 确认最终远程配置:
git remote -v

输出应为:

我的测试项目二期 http://10.10.1.60/Alex_zry_2333/DiMianErQi.git (fetch)
我的测试项目二期 http://10.10.1.60/Alex_zry_2333/DiMianErQi.git (push)
  1. 检查远程分支状态:
git ls-remote "我的测试项目二期"

应显示:

[b82fd7b9c...] refs/heads/master    # 您的新主分支
[原提交哈希]   refs/heads/old-master # 存档分支

最佳实践:创建简化别名

为避免中文和空格带来的操作不便,推荐创建英文别名:

# 添加简化别名
git remote add dimian http://10.10.1.60/Alex_zry_2333/DiMianErQi.git# 后续操作使用简化的别名
git push -f dimian master
git push dimian old-master

团队协作处理指南

如果多人使用此仓库,请通知团队成员执行:

# 第一步:更新远程引用
git fetch --all --prune# 第二步:重置本地主分支
git checkout master
git reset --hard dimian/master # 或对应远程名# 第三步:清理旧分支
git branch -d old-master      # 删除本地旧分支

技术总结

  1. 分支重命名原理​:

    • git branch -m 只是修改分支指针名称
    • 不会改变历史提交
    • 保留完整的提交树结构
  2. 强制推送注意事项​:

    graph LR
    A[本地master] -- 强制推送 --> B[远程master]
    C[团队副本] -- 需要重置 --> B
    
    • 仅在完全控制分支时使用 -f
    • 提前协调团队更新本地副本
  3. 远程仓库配置方案​:

    方案适用场景操作示例
    标准origin单仓库项目git push origin master
    多别名配置多仓库同步git push 别名A; git push 别名B
    自定义别名复杂命名git remote add 简写名 URL

后续维护建议

  1. 分支保护策略​:

    • 在仓库设置中保护 master 分支
    • 要求 Pull Request 审核才能合并
    • 禁止直接推送主分支
  2. 定期清理机制​:

    # 每月清理过期分支
    git branch -r | grep -Ev 'master|main' | xargs -I {} git push origin --delete {}# 归档一年前的旧分支
    git tag archive/branches/old-master-2025 old-master
    git push origin --tags
    
  3. 分支命名规范建议​:

    • master/main: 主分支
    • dev: 开发集成分支
    • feature/*: 功能分支
    • hotfix/*: 紧急修复分支
    • archive/*: 已归档分支

https://github.com/0voice

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

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

nginx常见问题(四):端口无权限

当 Nginx 日志报错 bind() to 80 failed (13: Permission denied) 时,这通常是由于权限不足导致 Nginx 无法绑定到 80 端口(该端口为系统特权端口)。以下是详细的问题分析与解决方案:一、问题原因分析80 端口属于 系统特权端口&am…

【线性代数】线性方程组与矩阵——(3)线性方程组解的结构

上一节:【线性代数】线性方程组与矩阵——(2)矩阵与线性方程组的解 总目录:【线性代数】目录 文章目录9. 向量组的线性相关性与线性方程组解的结构9.1. 向量组及其线性组合9.2. 向量组的线性相关性9.3. 向量组的秩9.4. 线性方程组…

机器学习-----K-means算法介绍

一、为什么需要 K-Means?在监督学习中,我们总把数据写成 (x, y),让模型学习 x → y 的映射。 但现实中很多数据根本没有标签 y,例如:啤酒:热量、钠含量、酒精度、价格用户:访问时长、点击次数、…

Spring Security自动处理/login请求,后端控制层没有 @PostMapping(“/login“) 这样的 Controller 方法

一:前言 (1)Spring Security概念: Spring Security 是属于 Spring 生态下一个功能强大且高度可定制的认证和授权框架,它不仅限于 Web 应用程序的安全性,也可以用于保护任何类型的应用程序。 &#xff08…

idea开发工具中git如何忽略编译文件build、gradle的文件?

idea开发工具中: git显示下面这个文件有变更: ~/Documents/wwwroot-dev/wlxl-backend/java/hyh-apis/hyh-apis-springboot/build/resources/main/mapping/AccountRealnameMapper.xml 我git的根路径是: ~/Documents/wwwroot-dev/wlxl-backend/…

状态机浅析

状态机是处理状态依赖型行为的高效工具,通过结构化建模状态转换,解决了传统条件判断的冗余和混乱问题。它在设备控制、流程管理、协议解析等场景中表现优异,核心优势在于逻辑清晰、可扩展性强和易于调试。 一、介绍 1. 概念 状态机&#x…

Windows 手动病毒排查指南:不依赖杀毒软件的系统安全防护

Windows 手动病毒排查指南:不依赖杀毒软件的系统安全防护 在数字时代,电脑病毒就像潜伏的"网络幽灵",从窃取隐私的木马到消耗资源的蠕虫,时刻威胁着系统安全。当杀毒软件失效或遭遇新型威胁时,手动排查病毒便…

GPT-5 is here

GPT-5 is here https://openai.com/index/introducing-gpt-5/ — and it’s #1 across the board! #1 in Text, WebDev, and Vision Arena #1 in Hard Prompts, Coding, Math, Creativity, Long Queries, and more Tested under the codename “summit”, GPT-5 now holds the …

【华为机试】55. 跳跃游戏

文章目录55. 跳跃游戏题目描述示例 1:示例 2:提示:解题思路一、问题本质与建模二、方法总览与选择三、贪心算法的正确性(直观解释 循环不变式)四、反向贪心:等价但有启发的视角五、与动态规划的对比与误区…

RabbitMQ面试精讲 Day 18:内存与磁盘优化配置

【RabbitMQ面试精讲 Day 18】内存与磁盘优化配置 开篇:内存与磁盘优化的重要性 欢迎来到"RabbitMQ面试精讲"系列的第18天!今天我们将深入探讨RabbitMQ的内存与磁盘优化配置,这是面试中经常被问及的高频主题,也是生产环…

【C++】string 的特性和使用

Ciallo&#xff5e; (∠・ω< )⌒★ string&#xff08;1&#xff09;1. 构造函数1.1 string();1.2 string(const char* s);1.3 string(const string& str);1.4 string(size_t n, char c);1.5 string(const string& str, size_t pos, size_t len npos);1.6 string(…

创始人IP的精神修炼:于成长中积蓄力量

IP 经济席卷之下&#xff0c;众多企业家常被 “是否入局 IP”“能否做好 IP” 的焦虑裹挟。这种潜藏的精神内耗&#xff0c;对企业根基的侵蚀往往胜过业绩的起伏。著名文化学者于丹在全球创始人 IP 领袖高峰论坛上的洞见&#xff0c;为创始人 IP 的精神成长照亮了前路&#xff…

gbase8s数据库中对象元数据查询

最近整理了gbase8s数据库中常见的元数据的查询&#xff0c;包括表、视图、序列、包、类型、触发器、plsql等等&#xff0c;仅供参考。set environment sqlmode oracle; drop package DBMS_METADATA; create or replace package DBMS_METADATA is function GET_DDL(objtype varc…

常用hook钩子函数

爬虫Hook技术常用字段和勾子函数 目录 Hook技术概述网络请求相关Hook浏览器环境HookJavaScript引擎Hook加密算法Hook反爬虫检测Hook实际应用示例Hook工具和框架 Hook技术概述 Hook&#xff08;钩子&#xff09;技术是一种在程序运行时拦截和修改函数调用的技术。在爬虫中&a…

【解决方法】华为电脑的亮度调节失灵

华为电脑的亮度调节失灵 参考文章&#xff1a; 华为电脑屏幕亮度怎么调不了&#xff1f;华为电脑调节亮度没反应解决教程 亲测&#xff0c;在控制面板中卸载HWOSD&#xff0c;再重装有用。

【软考中级网络工程师】知识点之 DCC 深度剖析

目录一、DCC 是什么1.1 定义阐述1.2 作用讲解二、DCC 工作原理2.1 拨号触发机制2.1.1 感兴趣流量定义2.1.2 触发拨号过程2.2 链路建立流程2.2.1 物理链路连接2.2.2 数据链路层协议协商三、DCC 配置要点3.1 基础配置步骤3.1.1 接口配置3.1.2 拨号映射配置3.2 高级配置参数3.2.1 …

W5500之Socket寄存器区介绍

W5500之Socket寄存器区介绍1)、Socket n模式寄存器(Socket n Mode Register&#xff0c;简写Sn_MR)偏移地址为0x0000&#xff0c;可读写&#xff0c;复位值为0x00&#xff1b;Bit7Bit6Bit5Bit4Bit3Bit2Bit1Bit0MULTI/MFENBCASTBND/MC/MMBUCASTB/MIP6BP3P2P1P0MULTI/MFEN占用“S…

酉矩阵(Unitary Matrix)和随机矩阵

先讨论酉矩阵&#xff08;Unitary Matrix&#xff09;的性质。1. 酉矩阵定义酉矩阵&#xff08;Unitary Matrix&#xff09;是复数域上的方阵&#xff0c;满足以下条件&#xff1a;其中&#xff1a;是 的共轭转置&#xff08;即 Hermitian 转置&#xff0c; &#xff09;。是单…

「iOS」————单例与代理

iOS学习单例代理代理模式的原理代理的循环引用设计模式单例 优点&#xff1a; 全局访问&#xff1a;单例模式确保一个类只有一个实例&#xff0c;并提供全局访问点&#xff0c;方便在整个应用中共享数据或功能。节省资源&#xff1a;由于只创建一个实例&#xff0c;可以减少内…

Microsoft Dynamics AX 性能优化解决方案

一、方案背景Microsoft Dynamics AX 是功能强大的企业ERP系统&#xff0c;虽然Microsoft 已推出基于云的现代化 ERP 平台 Dynamics 365 Finance and Operations&#xff0c;提供了更高的性能和持续更新&#xff0c;用来替代Dynamics AX。在考虑升级到Dynamics 365之前&#xff…