Git仓库迁移到远程仓库(源码、分支、提交)

单个迁移仓库

一、迁移仓库 

1.准备工作
> 手动在电脑创建一个临时文件夹,CMD进入该目录
> 远程仓库上创建一个同名的空仓库

2.CMD命令:拉取旧Git仓库(包含提交、分支、源码)

$ git clone --bare http://git.domain.cn/path/app.git

3.CMD命令:进入本地仓库目录

$ cd app.git

4.CMD命令:推送仓库到新远程仓库(包含提交、分支、源码)

$ git push --mirror https://gitee.com/path/app.git
$ cd ..
二、更改本地项目的仓库地址

1、CMD进入本地项目文件夹(不是刚才拉取的仓库目录,是项目文件夹,如果没有,则直接从新仓库克隆项目源码到本地即可

2、CMD命令:更改为新的仓库地址

$ git remote set-url origin https://gitee.com/path/app.git

以上是单个仓库的命令,如需迁移多个项目,可以参考下面的批量命令。

批量迁移仓库

一、Windows批量迁移Git仓库脚本(源码、分支、提交).bat

使用场景:旧仓库迁移到新仓库,支持所有远程Git仓库。首次运行会弹窗要求输入Git账号密码。

使用方法:把此bat和remotes-all.txt文件放在一个空文件夹里双击运行。

@echo off@REM 旧的仓库地址
set remote_old=http://git.domanin.cn/git-path
@REM 新的仓库地址
set remote_new=http://gitee.com/git-path
@REM 仓库名称列表:手动创建一个remotes-all.txt文件,多个仓库用换行隔开
set input_file=remotes-all.txtSETLOCAL DisableDelayedExpansion
FOR /F "usebackq delims=" %%a in (`"findstr /n ^^ %input_file%"`) do (call :process %%a
)
goto :eof:process
SETLOCAL EnableDelayedExpansion
set "repo=!%1!"
set "repo=!repo:*:=!"
echo !repo!
git clone --bare "%remote_old%/!repo!.git"
cd "!repo!.git"
git push --mirror "%remote_new%/!repo!.git"
cd ..
@REM rmdir "!repo!.git"
ENDLOCAL
goto :eof
二、Windows批量切换Git本地仓库地址脚本.bat

使用场景:本地已有源码,不想重新克隆,直接改源码的仓库地址。

使用方法:把此bat和remotes-all.txt文件放在源码的上一级目录双击运行。

@echo off@REM 新的仓库地址
set remote_new=http://gitee.com/git-path
@REM 仓库名称列表:手动创建一个remotes-all.txt文件,多个仓库用换行隔开
set input_file=remotes-all.txtSETLOCAL DisableDelayedExpansion
FOR /F "usebackq delims=" %%a in (`"findstr /n ^^ %input_file%"`) do (call :process %%a
)
goto :eof:process
SETLOCAL EnableDelayedExpansion
set "repo=!%1!"
set "repo=!repo:*:=!"REM Check if the directory exists
if not exist "!repo!" (echo Directory "!repo!" does not exist. Skipping...goto :eof
)echo !repo!
cd "!repo!"
git remote set-url origin "%remote_new%/!repo!.git"
cd ..
ENDLOCAL
goto :eof

参考了以下博主的文章,有需要的小伙伴可以,戳↓

流浪_彩虹:git仓库完整迁移的各种方法(代码,分支,提交记录)_git仓库迁移-CSDN博客

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

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

相关文章

鸿蒙千帆启新程,共绘数字生态蓝图

华为的鸿蒙千帆起计划:共筑数字未来,学习华为创新之路 在当今全球科技竞争日益激烈的背景下,华为作为中国科技企业的代表,正通过其自主创新的鸿蒙系统,引领一场移动应用生态的变革。鸿蒙千帆起计划,作为华…

React Native 组件详解之 ActivityIndicator、Button、FlatList、Image、ImageBackground

React Native 组件详解:ActivityIndicator、Button、FlatList、Image 和 ImageBackground 在 React Native 中,组件是构建用户界面的基本单元。它们可以是简单的 UI 元素,如按钮或图像,也可以是复杂的列表或表单。了解这些组件的…

高级java每日一道面试题-2024年11月28日-JVM篇-调优命令有哪些?

如果有遗漏,评论区告诉我进行补充 面试官: 调优命令有哪些? 我回答: 在Java高级面试中,调优命令是面试官常问的问题之一。以下是对Java调优命令的详细介绍: 一、主要调优命令 1. jps(JVM Process Status Tool) 功能&#x…

Qt-系统相关(2)多线程网络

Qt多线程 在 Qt 中,多线程的处理⼀般是通过 QThread类 来实现。 QThread 代表⼀个在应⽤程序中可以独⽴控制的线程,也可以和进程中的其他线程共享数据。 QThread 对象管理程序中的⼀个控制线程。 QThread 常⽤ API: 使用线程 关于创建线程…

永久免费的PDF万能水印删除工具

永久免费的PDF万能水印删除工具 1.简介 PDF万能水印删除工具,可以去除99.9%的PDF水印。例如:XObject水印(含图片水印)、文本水印、绘图水印/曲线水印、注释水印、工件水印、剪切路径水印等等。本软件是永久免费,无有…

华三(HCL)和华为(eNSP)模拟器共存安装手册

接上章叙述,解决同一台PC上同时部署华三(HCL)和华为(eNSP)模拟器。原因就是华三HCL 的老版本如v2及以下使用VirtualBox v5版本,可以直接和eNSP兼容Oracle VirtualBox,而其他版本均使用Oracle VirtualBox v6以上的版本,…

Group Convolution(分组卷积)

分组卷积的优点: 减少参数数量: 在分组卷积中,每个分组只与一部分输入通道进行卷积运算,这意味着模型的参数数量会减少。例如,如果一个卷积层有8个输入通道和8个输出通道,且不使用分组,那么将有…

深度理解进程的概念(Linux)

目录 一、冯诺依曼体系 二、操作系统(OS) 设计操作系统的目的 核心功能 系统调用 三、进程的概念与基本操作 简介 查看进程 通过系统调用获取进程标识符 通过系统调用创建进程——fork() 四、进程的状态 操作系统中的运行、阻塞和挂起 理解linux内核链表 Linux的进…

SQLite 管理工具 SQLiteStudio 3.4.5 发布

SQLiteStudio 3.4.5 版本现已发布,它带来了大量的 bug 修复,并增加了一些小功能。SQLiteStudio 是一个跨平台的 SQLite 数据库的管理工具。 具体更新内容包括: 现在可以使用 Collations Editor 窗口在数据库中注册 Extension-based collatio…

scala统计词频

目标:统计词频 (1)从文件1.tst,读入内容,保存在一个字符串中。 (2)统计字符串中,每个单词出现的频率 (3)对结果进行排序 (4)把最后…

非常简单实用的前后端分离项目-仓库管理系统(Springboot+Vue)part 2

七、创建前端项目 你下载了nodejs吗?从cn官网下载:http://nodejs.cn/download/,或者从一个国外org网站下载,选择自己想要的版本https://nodejs.org/download/release/,双击下载好的安装文件,选择安装路径安…

继续完善wsl相关内容:基础指令

文章目录 前言一、我们需要安装wsl,这也是安装docker desktop的前提,因此我们在这篇文章里做了介绍:二、虽然我们在以安装docker desktop为目的时,不需要安装wsl的分发(distribution),但是装一个分发也是有诸多好处的:三、在使用wsl时,不建议把东西直接放到系统里,因…

20241124 Typecho 视频插入插件

博文免不了涉及到视频插入这些,网上的插件都或多或少的比较重,和Typecho的风格不搭配 后面就有了DPlay插件精简而来的VideoInsertion插件 VideoInsertion: Typecho 视频插入插件 目录结构 rockhinlink-ht2:/var/www/html/typecho/usr/plugins/VideoInsertion$ tree -h [4.…

css:项目

这是一个完整的网站制作的流程 美工会先制作一个原型图: 原型图写的不详细,就是体现一个网页大致的布局 然后美工再做一个psd样例图片 然后再交给程序员 项目 模块化开发:把代码的不同的样式封装起来,需要用到相同样式的标签就…

AWS EC2设置用户名密码登录

使用AWS EC2 设置用户名密码登录 步骤 1: 访问控制台 登录到AWS管理控制台。导航至 EC2 Dashboard。在左侧导航栏中选择 Instances。选择需要配置的实例。使用 EC2 Instance Connect 访问实例控制台。 步骤 2: 切换到 root 用户 打开终端或命令行工具,通过SSH连…

【通俗理解】Adaptive Gradient Algorithm(自适应梯度算法)——从梯度下降到优化器选择

【通俗理解】Adaptive Gradient Algorithm(自适应梯度算法)——从梯度下降到优化器选择 关键词提炼 #自适应梯度算法 #梯度下降 #学习率 #优化器 #Adam #RMSprop #机器学习 #深度学习 第一节:自适应梯度算法的类比与核心概念【尽可能通俗】…

Qt桌面应用开发 第九天(综合项目一 飞翔的鸟)

目录 1.鸟类创建 2.鸟动画实现 3.鼠标拖拽 4.自动移动 5.右键菜单 6.窗口透明化 项目需求: 实现思路: 创建项目导入资源鸟类创建鸟动画实现鼠标拖拽实现自动移动右键菜单窗口透明化 1.鸟类创建 ①鸟类中包含鸟图片、鸟图片的最小值下标和最大值…

Spring Boot 整合 Prometheus 实现资源监控

引言 在微服务架构流行的今天,服务的监控和管理变得尤为重要。Prometheus 作为一个开源的监控和告警工具,以其强大的数据采集、存储和查询能力,受到了众多开发者的青睐。Spring Boot 作为 Java 领域快速构建微服务的框架,与 Prom…

网络安全期末复习

第1章 网络安全概括 (1)用户模式切换到系统配置模式(enable)。 (2)显示当前位置的设置信息,很方便了解系统设置(show running-config)。 (3)显…

使用Python实现自动化邮件通知:当长时程序运行结束时

使用Python实现自动化邮件通知:当长时程序运行结束时 前提声明 本代码仅供学习和研究使用,不得用于商业用途。请确保在合法合规的前提下使用本代码。 目录 引言项目背景项目设置代码分析 导入所需模块定义邮件发送函数发送邮件 实现步骤结语全部代码…