Computer >> 컴퓨터 >  >> 프로그램 작성 >> 프로그램 작성

Git:모든 분기 가져오기

Git을 사용하면 프로젝트에 대해 여러 개별 개발 라인을 유지할 수 있습니다. 이러한 개발 라인을 분기라고 합니다. 원격 저장소에서 최신 버전의 분기를 독립적으로 검색하거나 모든 분기의 최신 버전을 한 번에 검색할 수 있습니다.

이 가이드에서는 git fetch –all 및 git pull –all 명령을 사용하여 원격 저장소에서 변경 사항을 검색하는 방법에 대해 설명합니다.

분기란 무엇입니까?

우리가 블로그 웹사이트에서 일하고 있다고 가정해 봅시다. 사용자가 댓글을 달 수 있는 기능을 블로그에 추가할 예정입니다. 우리는 아직 작업 중이기 때문에 이 기능이 우리 프로젝트의 기본 버전의 일부가 되는 것을 원하지 않습니다.

이를 위해 Git 브랜치를 사용할 수 있습니다. 주석 기능에 대한 모든 코드를 저장하기 위해 "comments"라는 분기를 만들 수 있습니다. 이렇게 하면 웹사이트에 배포된 코드베이스의 기본 버전을 변경하지 않고도 주석 달기 기능을 사용할 수 있습니다.

분기는 로컬 또는 원격으로 저장할 수 있습니다. 프로젝트의 로컬 버전에서 작업하는 경우 분기는 로컬입니다. 원격 분기는 프로젝트의 기본 버전과 함께 저장됩니다.

Git:모든 분기 가져오기

우리는 블로그 사이트라는 프로젝트를 진행하고 있습니다. 이 프로젝트에는 오리진 마스터와 오리진 개발이라는 두 가지 분기가 있습니다.

dev 브랜치는 우리가 작업하고 있는 모든 실험적 기능을 포함합니다. 다른 공동 작업자가 두 분기에 변경 사항을 푸시했다고 생각합니다. 변경 사항이 있는 경우 메타데이터를 확인하고 검색하고 싶습니다.

fetch 명령을 사용하여 이 작업을 수행할 수 있습니다. fetch 명령은 최신 업데이트에 대해 원격 분기에서 메타데이터를 검색하도록 Git에 지시합니다. fetch 명령은 저장소의 로컬 버전에 저장된 파일을 업데이트하지 않습니다.

참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.

부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.

모든 원격 분기를 추적하고 해당 분기에 대한 메타데이터를 가져오려면 –all 플래그와 함께 git fetch 명령을 사용할 수 있습니다.

git fetch --all

이 명령은 다음을 반환합니다.

Fetching origin
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From https://github.com/career-karma-tutorials/blog-site
   3fcea0c..da74d68  dev    	-> origin/dev
에서

fetch 명령은 원격 저장소에 대한 모든 변경 사항을 가져왔습니다. fetch 명령은 원격 dev 분기에 로컬 시스템에 없는 변경 사항이 포함되어 있음을 알고 있습니다. 해당 커밋에 대한 메타데이터를 방금 검색했습니다.

git fetch origin <branch-name>을 사용하여 개별 분기에 대한 메타데이터를 검색할 수 있습니다. 명령.

Git:모든 분기 가져오기

로컬 작업 복사본을 업데이트하고 메타데이터를 검색하려면 어떻게 해야 합니까? git pull 명령이 유용한 곳입니다.

이제 저장소가 변경되었음을 알 수 있습니다. 이러한 변경 사항을 로컬 저장소와 병합하게 되어 기쁩니다. 변경 사항을 로컬 시스템에 다운로드하려면 git pull 명령을 사용해야 합니다.

git pull --all

–all 플래그를 사용하여 모든 분기에서 변경 사항을 검색하고 싶다는 것을 나타냅니다. 명령은 다음을 반환합니다.

Fetching origin
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
From https://github.com/career-karma-tutorials/blog-site
   3fcea0c..da74d68  dev    	-> origin/dev
Updating 3fcea0c..da74d68
Fast-forward
 README.md | 1 +
 1 file changed, 1 insertion(+)

git pull 명령은 먼저 git fetch 명령을 실행하여 변경 사항을 확인합니다. 가져오기 작업은 커밋에 대한 메타데이터를 반환합니다. 그런 다음 git pull 명령은 원격 저장소에 대한 모든 변경 사항을 검색하고 로컬 파일을 변경합니다.

원격 저장소에서 README.md 파일이 변경된 것을 볼 수 있습니다. 이제 pull 작업을 실행했으므로 로컬 시스템에 변경 사항이 있습니다.

한 브랜치에서 코드를 검색하려면 git pull origin 명령을 사용할 수 있습니다.

결론

git fetch –all 명령은 리포지토리의 모든 분기에 적용된 각 변경 사항에 대한 메타데이터를 검색합니다. git pull –all 명령은 모든 분기에서 수행된 모든 변경 사항을 로컬 시스템으로 다운로드합니다.
이제 전문가처럼 Git에서 모든 분기를 가져오는 데 필요한 지식을 얻었습니다!