我有一个具有某些依赖项的项目。它们在.gitmodules
中定义。我想确保模块是最新的。
因此,这就是我在Dockerfile
中所做的事情。
RUN git submodule update --init --recursive
它给了我错误:fatal: Not a git repository (or any of the parent directories): .git
。
该目录很好。我在此行之前检查了ls -a
,文件夹正确。
git也是最新的(2.11
)。
无论我做什么,都看不到.gitmodules
。
你们对什么可能导致这种情况有任何想法吗?
编辑:以下是Dockerfile
FROM python:3
RUN mkdir -p /usr/src/docker_container
ADD ./ /home/docker_container/
WORKDIR /home/docker_container/my-project
RUN git submodule update --init --recursive && \
mkdir build && cd build && \
cmake .. && cmake --build . && cd ..
文件夹结构如下:
| my_project:
| --- module1
| --- module2
| ---一些源代码和.gitmodules
文件
答案 0 :(得分:0)
您可以这样修改命令吗?
RUN pwd && git submodule update --init --recursive
然后检查输出。
对我来说,该错误表示您不在正确的文件夹中。
要检查这不是子模块问题,可以尝试运行“ git fetch”,我想您会遇到相同的错误。
希望对您有帮助。