누락된 서브모듈 클론

Beginner

This tutorial is from open-source community. Access the source code

소개

Git 에서 서브모듈 (submodule) 은 레포지토리 (repository) 내의 레포지토리입니다. 이를 통해 다른 레포지토리를 프로젝트의 종속성으로 포함할 수 있습니다. 서브모듈을 포함하는 Git 레포지토리를 클론 (clone) 할 때, 서브모듈은 자동으로 클론되지 않습니다. 이는 프로젝트를 빌드하거나 실행하려 할 때 문제를 일으킬 수 있습니다. 이 랩에서는 누락된 서브모듈을 클론하고 커밋 (commit) 을 체크아웃 (checkout) 하는 방법을 배우게 됩니다.

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 중급 레벨의 실험이며 완료율은 75%입니다.학습자들로부터 100%의 긍정적인 리뷰율을 받았습니다.

누락된 서브모듈 클론

서브모듈을 포함하는 프로젝트에서 작업하고 있습니다. 프로젝트를 클론할 때, 서브모듈은 자동으로 클론되지 않습니다. 이는 프로젝트를 빌드하거나 실행하려 할 때 문제를 일으킵니다. 누락된 서브모듈을 클론하고 올바른 커밋을 체크아웃해야 합니다.

이 랩에서는 https://github.com/git/git이라는 Git 레포지토리를 사용합니다. 이 레포지토리는 레포지토리를 클론할 때 자동으로 클론되지 않는 서브모듈을 포함하고 있습니다.

누락된 서브모듈을 클론하고 올바른 커밋을 체크아웃하려면 다음 단계를 따르세요:

  1. 레포지토리 디렉토리로 이동합니다:
    cd git
  2. 서브모듈을 초기화합니다:
    git submodule update --init --recursive
  3. 서브모듈의 올바른 커밋, 즉 master 브랜치로 체크아웃합니다:
    git submodule foreach git checkout master
    최종 결과는 다음과 같습니다:
Submodule 'sha1collisiondetection' (https://github.com/cr-marcstevens/sha1collisiondetection.git) registered for path 'sha1collisiondetection'
Cloning into '/home/labex/project/git/sha1collisiondetection'...
Submodule path 'sha1collisiondetection': checked out '855827c583bc30645ba427885caa40c5b81764d2'

요약

누락된 서브모듈을 클론하고 커밋을 체크아웃하는 것은 서브모듈을 포함하는 Git 레포지토리로 작업할 때 중요한 단계입니다. 이 랩에서 설명된 단계를 따르면 프로젝트가 올바르게 빌드되고 실행되도록 할 수 있습니다.