news 2026/5/24 17:06:29

【git】git-transfer一行搞定仓库迁移

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【git】git-transfer一行搞定仓库迁移

文章目录

    • 介绍
    • 使用场景
    • 可用命令
      • 单个迁移示例
      • 批量迁移
      • 自动创建gitea组织和仓库
    • 执行步骤
    • 新增特性
    • 支持的地址格式
    • 获取

介绍

这是一个go语言编写的命令行git迁移工具:git-transfer。
特点:

  • 快速迁移,保留完整branch和commits记录
  • 本地到远程批量迁移, 默认迁移本地分支。
  • 远程到远程批量迁移,默认迁移所有分支,并且本地clone备份。

使用场景

git仓库地址发生变化,origin地址需要换成新的,支持单个仓库迁移和批量迁移两种模式。

可用命令

  • git-transfer <新地址>- 单个仓库迁移,在项目目录下执行
  • git-transfer --yaml [配置文件]- 批量迁移(默认: transfer.yaml),任意路径执行
  • git-transfer --help- 显示帮助信息

单个迁移示例

git-transfer https://github.com/user/repo.git git-transfer git@github.com:user/repo.git

批量迁移

创建transfer.yaml配置文件:

projects:-name:"项目1"path:"./project1"old_origin:"https://old-server.com/user/project1.git"# 从old-origin克隆到本地path,然后推送new-originnew_origin:"https://github.com/user/project1.git"-name:"项目2"path:"./project2"new_origin:"https://github.com/user/project2.git"# 只写new_origin,从本地直接推送所有分支到new_origin

自动创建gitea组织和仓库

git-transfer --make-repo gitea --yaml z_hedong.yaml --username admin --password123456

然后执行批量迁移:

git-transfer --yaml my-config.yaml

执行步骤

  1. 环境检查

    • 检测本地是否安装git,无则输出"请配置git程序"
    • 检查当前目录是否为git仓库,无则输出"当前目录不是git仓库"
    • 验证新地址格式是否正确
  2. 备份当前配置

    • 获取并保存当前origin地址(用于出错时回滚)
    • 输出当前origin地址信息
  3. 更新远程地址

    • git remote remove origin- 删除现有的origin
    • git remote add origin 新地址- 添加新的origin地址
    • 验证新地址是否添加成功
  4. 推送代码

    • 先尝试git push --all推送所有分支
    • 如果推送失败,询问用户是否确认使用git push -f --all强制推送
    • 推送成功后输出确认信息
  5. 错误处理

    • 任何步骤失败时,尝试恢复原origin地址
    • 输出详细的错误信息和建议

新增特性

  • 命令行帮助---help显示所有可用命令和使用说明
  • 批量迁移---yaml支持从配置文件批量迁移多个项目
  • 实时进度条- 批量迁移时显示绿色进度条(第几个项目/总数)
  • 跨平台兼容- 兼容 cmd/powershell/bash/sh/zsh 等终端
  • 彩色输出- 使用颜色区分不同类型的信息
  • 详细日志- 每一步都有详细的日志输出
  • 安全回滚- 支持出错时自动回滚到原地址

支持的地址格式

  • http://github.com/user/repo.git
  • https://github.com/user/repo.git
  • git@github.com:user/repo.git
  • ssh://git@github.com/user/repo.git

获取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/11 8:37:31

深度学习入门第一步:选择Miniconda还是Anaconda?

深度学习入门第一步&#xff1a;选择Miniconda还是Anaconda&#xff1f; 在深度学习项目刚刚起步时&#xff0c;很多初学者会面临一个看似不起眼却影响深远的问题&#xff1a;该用 Anaconda 还是 Miniconda&#xff1f; 你可能已经听说过 Anaconda——那个“一键安装上百个科…

作者头像 李华
网站建设 2026/5/1 5:56:17

2025自考必备!8个AI论文平台测评,毕业论文写作全攻略

2025自考必备&#xff01;8个AI论文平台测评&#xff0c;毕业论文写作全攻略 2025年自考论文写作工具测评&#xff1a;为何需要一份精准榜单&#xff1f; 随着人工智能技术的不断进步&#xff0c;越来越多的自考生开始借助AI论文平台提升写作效率、优化内容质量。然而&#xff…

作者头像 李华
网站建设 2026/5/23 12:18:59

CGSS中国综合社会调查数据 地级市及区县编码

中国综合社会调查&#xff08;Chinese General Social Survey&#xff0c;CGSS&#xff09;是我国连续性截面社会调查数据&#xff0c;是最早建立的全国性、综合性、连续性的学术调查&#xff0c;通过年度调查数据对中国社会进行分析&#xff0c;收集社区、家庭、个人多层次的数…

作者头像 李华
网站建设 2026/5/22 4:19:27

字节跳动+RAG+实践手册

字节跳动的RAG&#xff08;检索增强生成&#xff09;技术实践围绕业务需求构建了全链路技术体系&#xff0c;有效解决了大语言模型知识滞后、易产生幻觉等问题&#xff0c;已在多业务线实现规模化落地。这份完整版的大模型 AI 学习资料已经上传CSDN&#xff0c;朋友们如果需要可…

作者头像 李华
网站建设 2026/5/22 23:57:51

T型槽铸铁平台概述

T型槽铸铁平台是一种广泛应用于机械加工、装配、检测等领域的工业基础设备。其主体由高强度铸铁&#xff08;如HT200或HT250&#xff09;铸造而成&#xff0c;表面经过精密加工并开设T型槽&#xff0c;便于固定工件或夹具。该平台具有稳定性高、耐磨性强、承重能力优异等特点&a…

作者头像 李华