将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 就可以看到复制的修改,可以提交到内部仓库了。

相关推荐
野生技术架构师6 天前
分布式存储 Ceph 的演进经验 · SOSP 2019
分布式·ceph
mixboot7 天前
ceph 14.2.22 nautilus Balancer 数据平衡
ceph·balancer·数据平衡
斯普信专业组11 天前
k8s云原生rook-ceph pvc快照与恢复(下)
ceph·云原生·kubernetes
斯普信专业组11 天前
k8s云原生rook-ceph pvc快照与恢复(上)
ceph·云原生·kubernetes
斯普信专业组11 天前
Ceph、K8s、CSI、PVC、PV 深入详解
ceph·容器·kubernetes
mixboot24 天前
Ceph OSD.419 故障分析
ceph·osd
赵成ccc24 天前
离线部署三节点 Ceph 分布式存储
分布式·ceph
赵成ccc24 天前
三节点Ceph分布式存储搭建指南
分布式·ceph
免檒24 天前
windows11下基于docker单机部署ceph集群
ceph·后端·docker·容器
mixboot24 天前
Ceph集群OSD崩溃恢复
ceph·osd