将ceph中的submodule转化为正常文件提交到内部仓库中

将ceph中的submodule转化为正常文件提交到内部仓库中

1、问题

ceph 的submodule经常下载不下来导致编译打包都困难,如果有一个方法将submodule下载下来然后直接放到仓库中,以免每次都需要重新clone了。这时发现另外一个问题,submodule没有被ceph仓库管理,修改内容也无法提交。

2、 解决方法

(1)清理submodule

复制代码
使用git submodule deinit命令来删除子模块的引用:
git submodule deinit src/spawn
使用git rm命令从主仓库中删除子模块的跟踪:
git rm --cached src/spawn

(2)下载社区已经做好的对应版本包,地址如下:ceph社区源码包,把其中的对应submodule替换掉再提交到仓库。

复制代码
src/spawn,src/rocksdb,src/dmclock,src/googletest,src/zstd,src/xxHash,src/erasure-code,src/civetweb,src/seastar,src/isa-l,src/rapidjson,src/crypto/isa-l/isa-l_crypto,src/boost/

3、 关闭编译时初始化submodule

复制代码
# git diff do_cmake.sh
diff --git a/do_cmake.sh b/do_cmake.sh
index ac60a5e881a..c79c8bc2094 100755
--- a/do_cmake.sh
+++ b/do_cmake.sh
@@ -1,6 +1,6 @@
 #!/usr/bin/env bash
 set -x
-git submodule update --init --recursive
+# git submodule update --init --recursive
 if test -e build; then
     echo 'build dir already exists; rm -rf build and re-run'
     exit 1

4、注释.gitignore中的部分忽略项

复制代码
vim ./.gitignore
#*.patch
#tags
#core
#*.log

之后git status 就可以看到复制的修改,可以提交到内部仓库了。

相关推荐
三十..1 天前
Ceph分布式存储核心技术精要与运维实践指南
运维·分布式·ceph
一个行走的民1 天前
Ceph OSD NUMA 亲和性、Page Cache 跨 NUMA 访问与绑核实践
ceph
潮起鲸落入海1 天前
ceph集群组件管理 ceph orch 和ceph config命令
ceph
bukeyiwanshui1 天前
20260529 Ceph 分布式存储 认证和授权管理
ceph
bukeyiwanshui1 天前
20260528 Ceph 分布式存储 池管理
ceph
一个行走的民1 天前
CephX 认证机制深度解析
ceph
马立杰1 天前
Ceph 集群手动部署
ceph·分布式存储
bukeyiwanshui1 天前
20260528 Ceph 分布式存储 集群配置
分布式·ceph
qq_356408661 天前
Kubernetes Rook-Ceph 高可用存储部署文档
ceph·容器·kubernetes
潮起鲸落入海1 天前
ceph集群mon 以及池管理
ceph