背景

开发中常需切换代码托管平台(如Coding → 自建GitLab)。以下通过实际命令演示如何安全迁移仓库并解决分支关联问题。


 

操作步骤及原理分析

1. 查看当前远程仓库

bash

git remote -v  

输出说明

text

origin  https://e.coding.net/... (fetch/push)  
  • origin:默认远程仓库别名

  • fetch/push:分别对应拉取和推送地址

2. 移除旧远程仓库

bash

git remote remove origin  

作用:解除本地与旧仓库的关联,避免误操作推送错误地址。

3. 添加新远程仓库

bash

git remote add origin ssh://git@121.36.xxxxxxx/system-ai-shop.git  

关键点

  • 使用SSH协议(需提前配置公钥)

  • 新仓库命名仍为origin(保持一致性)

4. 拉取远程数据

bash

git fetch origin  

输出解析

text

 * [new branch] master -> origin/master  
  • 将远程仓库的master分支同步到本地仓库的origin/master引用

  • fetch vs pull

    • fetch:仅获取数据,不自动合并(安全)

    • pull = fetch + merge(可能触发冲突)

5. 合并远程分支

bash

git pull origin master  

输出关键

text

Updating 242a806..2c1cc36  
Fast-forward  
  • Fast-forward:本地分支可直接指向远程新提交(无冲突)

  • 此时本地master分支已更新到远程最新版本

6. 绑定上游分支并推送

bash

git push --set-upstream origin master  

作用

  1. 推送本地master到远程origin/master

  2. 建立永久关联:本地master跟踪(track)origin/master

验证成功

text

Everything up-to-date  
branch 'master' set up to track 'origin/master'  
7. 推送代码

bash

git push  

text

Everything up-to-date  

知识扩展
  1. 长期解决方案

    bash

  • # 后续操作简化  
    
    git push   # 自动推送到跟踪分支  
    git pull   # 自动从跟踪分支拉取  

  • 避免首次推送报错

    bash

  • # 创建分支时直接绑定远程  
    git checkout -b new-branch  
    git push -u origin new-branch 

  • 查看分支关联关系

    bash

git branch -vv  

输出示例

text

  1. * master 2c1cc36 [origin/master] commit message  

总结
  • 迁移流程:移除旧仓库 → 添加新地址 → 拉取合并 → 绑定上游

  • 核心问题:分支未关联远程时需手动建立跟踪关系(--set-upstream

  • 最佳实践

    1. 优先使用fetch检查变更

    2. 首次推送务必使用-u参数

    3. 定期执行git remote -v验证仓库地址

通过此流程,团队可无缝切换代码托管平台,确保开发链路不受影响。

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

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

相关文章

HttpURLConnection使用及优化

文章目录 简介使用示例GET请求POST请求 HttpURLConnection优化1. 设置合适的超时时间2. 指定字符编码3. 正确处理响应编码4. 使用压缩传输(如果适用)5. 关闭连接释放资源6. 启用持久连接(Keep-Alive),减少握手开销 简介…

【Springai】项目实战进度和规划

项目概述 新开一个用于学习实践springai的项目,springai-novel是一个基于前后端分离的现代化AI实践应用 前端技术栈 Vue 3 TypeScriptVite Naive UI vicons/ionicons5 后端技术栈 JDK17Spring AI MySQL milvus ollama 已实现功能 (✅) ✅ springaimysql后…

知微传感Lkam系列线扫轮廓仪SDK例程篇:SDK安装及VS工程配置

写在前面 本人从事机器视觉细分的3D相机行业。编写此系列文章主要目的有: 1、便利他人应用3D相机,本系列文章包含公司所出售相机的SDK的使用例程及详细注释;2、促进行业发展及交流。 欢迎与我深入交流:微信号:liu_zhi…

机器学习4——参数估计之贝叶斯估计

贝叶斯估计 问题建模: 后验概率公式: P ( ω i ∣ x , D ) P ( x ∣ ω i , D i ) P ( ω i ) ∑ j 1 c P ( x ∣ ω j , D j ) P ( ω j ) P\left(\omega_i \mid \mathbf{x}, \mathcal{D}\right)\frac{P\left(\mathbf{x} \mid \omega_i, \mathcal{D…

【C++】命令模式

目录 一、模式核心概念与结构二、C 实现示例:遥控器与家电控制三、命令模式的关键特性四、应用场景五、命令模式与其他设计模式的关系六、C 标准库中的命令模式应用七、优缺点分析八、实战案例:数据库事务命令九、实现注意事项如果这篇文章对你有所帮助&…

基于librdkafka开发的C++客户端,生产者生产发送数据失败问题处理

我们的项目使用了开源的librdkafka库,实现向kafka服务器生产发送数据的功能。使用的librdkafka的版本是1.9.0。 作为客户端程序,在开发时和客户协商确认后,支持了SASL_PLAINTEXT认证。以下概念解释引用自通义千问AI SASL (Simple Authentic…

OpenGL之yaw、pitch、fov 和 lookAt

在 3D 图形学中,yaw、pitch、fov 和 lookAt 都是控制摄像机(Camera)行为的关键参数,但它们的 作用层级 和 使用场景 不同。 1. yaw、pitch、fov 的作用 (1) yaw(偏航角) 作用:控制摄像机 左右…

STM32-第一节-新建工程,GPIO,点亮LED,蜂鸣器

一、新建工程: 1.Keil中新建工程,选择开发板型号。 2.工程文件夹建立Start,Library等分类,复制模版工程中的文件到工程文件夹中。 3.在Keil中添加分组,添加文件。 4.工程选项设置: c/c中:Inc…

Rust标量、复合类型与自定义类型、第三方并发结构

以下是 Rust 中标量类型、对象类型(含结构体、复合类型、堆分配类型)以及常用第三方并发数据结构的完整分类、示例和区别对比,帮助你系统掌握它们的本质异同: 🟢 一、标量类型(Scalar Types,存储…

基于STM32温湿度检测—串口显示

基于STM32温湿度检测 (仿真+程序) 功能介绍 具体功能: 1.使用DHT11检测温湿度; 2.单片机处理完控制LCD1602显示温湿度; 3.单片机也通过串口显示检测到的温湿度; 添加图片注释,不…

Windows 10 查询 Nginx 进程教程

1. 打开命令提示符(CMD) 按 Win R,输入 cmd,回车。或者在开始菜单搜索栏输入“cmd”,选择“命令提示符”。 2. 查看是否有正在运行的 Nginx 进程 输入命令: tasklist | findstr nginx这个命令会列出所有…

使用 Kafka 优化物流系统的实践与思考

使用 Kafka 优化物流系统的实践与思考 在现代物流系统中,订单处理、仓储管理、运输调度等环节复杂且实时性要求高。为了满足异步解耦、高吞吐、高可用、事件驱动和数据可靠性等需求,Kafka 作为分布式消息队列和流处理平台,成为了我们的首选。…

Rust中模式匹配let Some(gas_price) = tx.gas_price用法

你问得非常好,let Some(gas_price) tx.gas_price 是 Rust 中的一种模式匹配写法,它用于从 Option 类型中提取值。 ✅ 背景知识:什么是 Option? 在 Rust 中,如果一个值可能存在也可能不存在,就会用 Option…

什么是LLM大语言模型

什么是LLM大语言模型 LLM的全称是,Large Language Model,简称LLM,翻译为大语言模型,其核心是模拟人类语言的复杂规律,实现语义理解、推理分析、文本生成等任务,主要目的是实现能读懂和说出人类语言的模型。…

杂谈-架构时代演进

关于未来 5-10 年软件系统演化方向 1. 云原生 ➝ 超云原生(Post Cloud Native) Kubernetes 平台自治化: K8s Operator 日益强大,逐步具备自愈、自动扩缩容、自动调优能力。 云厂商与企业私有云逐步融合为一体…

如何查看服务器的运行日志?

🟢 一、Linux服务器 Linux日志都在**/var/log**目录下,最常用的有: 📂 常用日志文件 文件内容/var/log/messages大部分系统日志(CentOS常见)/var/log/syslog系统消息日志(Ubuntu/Debian常见&a…

在幸狐RV1106开发板上用gcc14.2本地编译安装postgresql 17.5数据库

在幸狐RV1106开发板上用gcc14.2本地编译安装postgresql 17.5数据库 编译环境: RV1106G3 Linux luckfox-rv1106 5.10.160 #3 Fri Jun 27 14:16:20 AWST 2025 armv7l GNU/Linux BusyBox v1.36.1 gcc version 14.2.0 (GCC) GNU ld (GNU Binutils) 2.44 GNU Make 4.4 n…

Go语言中map[string]interface{} 和 map[string]string的区别

在 Go 语言中,map[string]interface{} 和 map[string]string 是两种不同类型的 map,它们的主要区别在于值的类型以及这种差异带来的使用场景和灵活性的不同。 1. 值的类型 map[string]interface{}:这里的 interface{} 表示 Go 中的空接口类型…

AdGuard Home 安装及使用

AdGuard Home 是 AdGuard 开源的一个私人 DNS 服务端,只需在网关部署,即可实现全局域网的广告拦截与隐私反追踪。在 DNS 解析的过程中,匹配规则库内的 URL 进行拦截,同时在客户端中,还可以通过自定义过滤规则实现网页 DOM 的拦截。 基于 Golang 编写的 AdGuard Home,官方…

绕过 GraphQL 暴力破解保护

题目要求: 本实验的用户登录机制由 GraphQL API 提供支持。API 终端节点有一个速率限制器,如果它在短时间内收到来自同一源的太多请求,则会返回错误。 要解决实验问题,请暴力破解登录机制以 .使用身份验证实验室密码列表作为密码…