Git 2.8 не может обновить подмодули - PullRequest
0 голосов
/ 02 января 2019

Я пытаюсь собрать gRPC внутри образа докера, но при использовании git версии 2.8 происходит сбой обновления подмодулей.В частности, этот Dockerfile:

FROM alpine:3.3
RUN apk update && apk add git
RUN git clone -b 'v1.17.1' --depth 1 https://github.com/grpc/grpc
RUN git --version
RUN cd grpc && git submodule update --init --depth 1

показывает git version 2.8.6 и выдает следующую ошибку

Cloning into '/grpc/third_party/abseil-cpp'...
error: no such remote ref cc4bed2d74f7c8717e31f9579214ab52a9c9c610

Если я переключаюсь на alpine:3.8, я получаю git version 2.18.1 и сборка успешна.Это ошибка в более ранней версии git?Есть ли обходной путь?

Примечания:

  • Я указываю --depth 1, потому что мне не нужна история фиксации.
  • У меня есть некоторые несвязанные ограничениякоторые затрудняют использование более новой версии.

1 Ответ

0 голосов
/ 02 января 2019

Как вы можете видеть в " Как создать неглубокие подмодули git? ", множественная эволюция была сделана начиная с Git 2.8.

Если доступно, попробуйте и используйте только один шаг:

git clone -b 'v1.17.1' --recurse-submodule --depth 1 https://github.com/grpc/grpc 
...