자식 체리픽 git에서는 한 브랜치에서 커밋을 선택하고 이를 다른 브랜치에 적용하는 것을 의미합니다. 이는 다음과 같은 다른 방법과 대조됩니다. 병합 그리고 추월하다 일반적으로 다른 분기에 많은 커밋을 적용합니다.
TCP IP 모델
git Cherry-Pick은 다음과 같습니다 리베이스 , 고급 개념이자 강력한 명령입니다. 전체 브랜치를 병합하지 않고 일부 커밋을 원하는 경우 주로 사용됩니다.
체리픽은 언제 사용하나요?
개발자가 자신이 현재 어느 브랜치에 있는지 인식하지 못하고 실수로 기본 브랜치 대신 다른 브랜치에 커밋했다고 가정해 보겠습니다. 이제 문제를 해결하려면 먼저 실행해야 합니다. 자식 쇼 , 그런 다음 커밋을 저장하고, 메인 브랜치를 확인하고, 거기에 패치를 적용하고, 동일한 커밋 메시지로 커밋합니다. 하지만 이 모든 작업은 단 하나의 명령(예: 체리픽.
더 잘 이해하려면 다음 다이어그램을 참조하십시오.

체리픽 전

체리픽 이후
Cherry-pick 명령은 다음과 같습니다.
git cherry-pick>
해시 커밋: 커밋 해시는 Git에서 생성되는 고유 식별자입니다. 각 커밋에는 하나의 커밋 해시가 있습니다.
메모: 이 명령을 사용하는 동안 커밋을 적용하려는 브랜치에 있는지 확인하세요.
사용하는 방법 체리픽?
아래에 생성된 프로젝트에서 Cherry-Pick 명령을 사용하는 방법을 단계별로 설명하면 다음과 같습니다.
1 단계: 열기 자식 배쉬 그리고 이름이 새 프로젝트를 생성합니다. 견본 그리고 다음을 사용하여 저장소를 초기화합니다. 그것은 뜨겁다 명령.
2 단계: 만들기 ' .txt' 사용하는 파일 우리 프로젝트에 대한 명령을 입력하고 인덱스 파일을 샘플 프로젝트에 추가한 다음 커밋을 하고 Enter 키를 누르기 전에 커밋 메시지를 작성해 보겠습니다.
메모: 실행 후 우리 명령을 실행하고 :wq를 입력하여 파일을 저장하고 종료합니다.
다음을 통해 커밋을 확인할 수 있습니다. 자식 로그 쉽게 명령을 내리세요:
3단계: 이제 2개의 버전이 있다고 가정하고 다음을 사용하여 2개의 서로 다른 분기를 만듭니다. 자식 지점 명령을 내리고 지점으로 이동합니다. 다음을 사용하여 2라고 가정하겠습니다. 자식 체크아웃 명령.
메모: 아래 다이어그램과 같이 git Branch 명령을 실행하면 모든 분기를 간단하게 볼 수 있습니다.
4단계: 이제 몇 가지 새로운 기능에 대한 작업을 원한다고 가정하고 새 기능 파일을 생성하고 추가하면 다음을 사용하여 feature.txt를 말할 수 있습니다. 우리 그리고 추가하다 아래와 같이 각각 명령을 실행합니다. 그런 다음 커밋 메시지를 사용하여 변경 사항을 커밋합니다.
아래와 같이 git log 명령으로 커밋을 확인할 수 있습니다.

브랜치 1이 있고 브랜치 2에서는 더 멀리 이동했으며 현재 브랜치 2의 기능을 작업하고 있는 첫 번째 커밋을 명확하게 보여줍니다.
5단계: 이제 기능에서 버그를 발견했고 이 동일한 버그가 1 브랜치에도 존재한다는 것을 알게 되었다고 가정해 보겠습니다.
이제 우리는 fix.txt 파일을 추가하고 이를 현재 분기(예: 2)에 추가하고 필요한 변경 사항을 커밋하여 아래와 같이 일부 버그나 문제를 수정하려고 합니다.
최종 커밋 확인:
6단계: 지금, 우리는 브랜치 2의 버그를 수정했지만 이 수정 사항을 브랜치 1에도 추가해야 하지만 이 기능에 대한 작업이 계속 진행 중일 수 있으므로 이 브랜치 2를 브랜치 1에 병합하고 싶지 않습니다.
따라서 이 시나리오에서는 특정 커밋을 선별적으로 선택할 수 있습니다. 그렇게 하려면 다음을 복사하세요. 해시시 값 위 다이어그램에서 강조 표시된 후 checkout 을 사용하여 분기 1로 이동한 후 다음 명령을 사용하십시오. 체리픽 방금 복사한 해시를 붙여넣으세요.
위에서 명확하게 볼 수 있듯이 이전에는 체리 피킹을 수행하기 전에 index.txt만 있었지만 이제는 첫 번째 분기에도 fix.txt 파일이 있음을 알 수 있습니다.
이제 확인해 보려고 하면 자식 로그 – 온라인 , 우리는 커밋이 브랜치 1에도 온 것을 볼 수 있을 것입니다.
Cherry-pick의 몇 가지 중요한 사용 사례
다음은 Cherry-Pick의 몇 가지 일반적인 응용 프로그램입니다.
- 실수로 잘못된 브랜치에 커밋을 한 경우에는 Cherry-Pick을 사용하여 필요한 변경 사항을 적용할 수 있습니다.
- 프로젝트의 프런트엔드와 백엔드 모두에서 동일한 데이터 구조를 사용한다고 가정해 보겠습니다. 그런 다음 개발자는 Cherry-Pick을 사용하여 커밋을 선택하고 이를 프로젝트의 해당 부분에 사용할 수 있습니다.
- 버그가 발견되면 최대한 빨리 최종 고객에게 수정 사항을 전달하는 것이 중요합니다.
- 때로는 구성 요소 브랜치가 오래되어 기본 브랜치로 수렴되지 않고 요청이 닫힐 수도 있지만 git은 해당 커밋을 잃지 않기 때문에 선별적으로 선택하여 다시 돌아올 수 있습니다.
체리픽 사용의 단점
Cherry-Pick은 복사 커밋과 Cherry-Pick이 작동하는 수많은 상황을 유발할 수 있으므로 항상 사용해서는 안 됩니다. 기존 병합은 모든 면에서 선호됩니다. 또한 2개 이상의 브랜치에서 커밋이 유사한 코드 줄을 다양한 물질로 업데이트하고 하나의 커밋을 다른 브랜치에 대해 git Cherry-Pick하는 경우에도 충돌이 발생합니다.
결론
Git의 Cherry-Pick 명령은 브랜치 간에 특정 커밋을 선택적으로 적용하는 강력한 도구입니다. 실수를 수정하고 코드를 공유하는 데는 좋지만 과도하게 사용하면 특히 커밋이 동일한 코드 줄에 닿을 때 문제가 발생할 수 있습니다. 따라서 깨끗하고 효율적인 코드 기록을 유지하려면 현명하게 사용하십시오.