当前位置: 首页 > news >正文

【GIT】重新初始化远程仓库

有的时候我们克隆远端仓库会出错:

git clone --depth 1 git@116.*.*.*:/srv/customs.git D:\dev\projects\kdy\customs11\customs
Cloning into 'D:\dev\projects\kdy\customs11\customs'...
remote: Enumerating objects: 1494, done.
remote: Counting objects: 100% (1494/1494), done.
error: --shallow-file died of signal 96/1233)
remote: aborting due to possible repository corruption on the remote side.
fatal: early EOF
error: git upload-pack: git-pack-objects died with error.
fatal: git upload-pack: aborting due to possible repository corruption on the remote side.
fatal: fetch-pack: invalid index-pack output

这时候需要重新初始化远程仓库会清空远程仓库的所有内容,因此需要本地重新提交代码。以下是具体步骤:


1. 重新初始化远程仓库

在远程服务器上执行以下命令:

cd /srv/customs.git
rm -rf *
git init --bare

这会将远程仓库清空并重新初始化为一个空的裸仓库。


2. 本地重新提交代码

由于远程仓库已被清空,本地需要重新推送代码。以下是具体步骤:

2.1 进入本地仓库目录
cd D:\dev\projects\kdy\customs11\customs
2.2 检查本地仓库状态

确保本地仓库是干净的,没有未提交的更改:

git status

如果有未提交的更改,可以先提交:

git add .
git commit -m "Save local changes before re-pushing"
2.3 重新设置远程仓库地址

如果远程仓库地址没有变化,可以跳过这一步。如果需要重新设置远程地址,可以运行:

git remote set-url origin git@116.*.*.*:/srv/customs.git
2.4 强制推送本地代码到远程仓库

由于远程仓库是空的,需要强制推送本地分支:

git push --force origin main

(如果本地分支不是 main,请将 main 替换为你的分支名称,例如 master 或其他分支名。)


3. 验证推送结果

推送完成后,可以通过以下命令检查远程仓库是否正常:

git remote show origin

或者重新克隆仓库到另一个目录,验证内容是否完整:

git clone git@116.*.*.*:/srv/customs.git /path/to/test-clone

注意事项

  1. 备份远程仓库

    • 在执行 rm -rf * 之前,确保已经备份远程仓库的重要数据。
    • 可以使用 tarrsync 备份整个仓库目录。
  2. 通知团队成员

    • 重新初始化远程仓库会影响所有开发者,需要通知团队成员重新克隆仓库或强制推送本地分支。
  3. 避免直接操作生产环境

    • 如果这是生产环境的仓库,请谨慎操作,确保有完整的回滚计划。

通过以上步骤,你可以成功重新初始化远程仓库并重新提交本地代码。

相关文章:

  • [Linux]进程地址空间
  • APK文件结构与逆向工具链深度解析
  • 蓝桥杯 17110抓娃娃
  • 登山第十九梯:实时点云压缩——量变质不变
  • FreeRTOS(9)信号量-计数型信号量
  • 半导体工艺(七)干法刻蚀1.0
  • EaseUS Todo Backup Pro v16.0 数据备份还原软件
  • neo4j中常用cql命令汇总(基础版)
  • VS Code远程Docker开发配置指南——完美速通
  • idea 2023社区版自动生成 serialVersionUID
  • 搜广推校招面经四十六
  • FastDDS中Utils定义的那些数据结构(二)
  • redis增加ip白名单
  • 多数元素——面试经典150题(力扣)
  • 30天学习Java第四天——JVM规范
  • Chrome 扩展开发 API实战:Sessions (六)
  • 使用Python实现ICO文件生成工具
  • TensorFLow深度学习实战(11)——风格迁移详解
  • 电脑突然没有声音的可能原因与应对方法
  • NineData:解锁多云与混合云环境下的智能数据管理
  • “千馆万员讲家风”活动举办,小讲解员登台讲述家风故事
  • 三只松鼠创始人:要做全品类自有品牌零售商,不被嘲笑的梦想不值得被实现
  • 深一度|有望冲击首轮秀?杨瀚森走出舒适圈站上大舞台
  • 观察|脱欧5年后英欧再办峰会,多项突破性协议意味着什么?
  • 长三角哪些城市爱花钱?这个城市令人意外
  • 张核子“限高”次日即被解除,前员工的执行款3个月后仍未到账