스택큐힙리스트

어떻게 모든 Git 브랜치를 가져올 수 있나요? 본문

카테고리 없음

어떻게 모든 Git 브랜치를 가져올 수 있나요?

스택큐힙리스트 2024. 1. 18. 13:53
반응형

나는 여러 브랜치를 포함한 Git 리포지토리를 복제했습니다. 그러나 git branch는 하나만 보여줍니다:


$ git branch
* master

로컬로 모든 브랜치를 가져오려면 어떻게 해야 할까요? 이렇게 하면 git branch를 실행할 때 다음과 같이 표시됩니다.


$ git branch
* master
* staging
* 기타...

답변 1


  1. fetch는 로컬 브랜치(리모트 브랜치를 추적하는)를 업데이트하지 않습니다. 로컬 브랜치를 업데이트하려면 여전히 모든 브랜치를 풀해야 합니다.



  2. fetch는 로컬 브랜치(리모트 브랜치를 추적하는)를 생성하지 않습니다. 이를 수동으로 수행해야 합니다. 모든 리모트 브랜치를 나열하려면 다음을 실행하세요:
    git branch -a




리모트 브랜치를 추적하는 로컬 브랜치를 업데이트하려면:


git pull --all

그러나 이는 여전히 부족할 수 있습니다. 이는 리모트 브랜치를 추적하는 로컬 브랜치에만 작동합니다. 모든 리모트 브랜치를 추적하려면 git pull --all 이전에 이 원라이너를 실행하세요:


git branch -r | grep -v '\->' | sed s,\x1B\[[0-9;]*[a-zA-Z],,g | while read remote; do git branch --track ${remote#origin/} $remote; done

부가적으로, AFAIK git fetch --allgit remote update는 동등합니다.


Kamil Szot의 댓글, 많은 사람들이 유용하게 찾고 있습니다.



저는 다음과 같이 사용해야 했습니다:


for remote in `git branch -r`; do git branch --track ${remote#origin/} $remote; done

왜냐하면 당신의 코드는 origin/branchname이라는 이름의 로컬 브랜치를 생성하고 있었고
나는 그것을 참조할 때마다 refname 'origin/branchname' is ambiguous 오류가 발생했기 때문입니다.


답변 2

제목: Git 브랜치 전부 가져오기: 쉽고 간단한 방법
서론:
Git은 버전 관리 시스템 중 가장 인기 있는 도구 중 하나입니다. 프로젝트를 효과적으로 관리하고 다른 사람들과 협업하기 위해 Git의 기능을 잘 활용하는 것은 매우 중요합니다. 그 중에서도 Git 브랜치의 사용은 프로젝트 관리에서 핵심적인 역할을 하므로, 모든 브랜치를 가져오는 방법에 대해 알아보고자 합니다.
본문:
Git에서 모든 브랜치를 가져오는 방법은 간단하고 쉽습니다. 이를 위해 다음과 같은 단계를 따릅니다.
1. 터미널 창을 엽니다: Git 명령어를 실행할 수 있는 터미널 창을 엽니다. Git Bash, 커맨드 프롬프트 또는 터미널 등 어떤 플랫폼을 사용하든 상관없습니다.
2. Git 저장소로 이동합니다: 가져올 프로젝트의 Git 저장소 디렉토리로 이동합니다. 'cd' 명령어를 사용하여 디렉토리를 변경할 수 있습니다.
3. 모든 브랜치 가져오기: 다음 명령어를 입력하여 모든 브랜치를 가져옵니다.
git fetch --all
4. 가져온 브랜치 확인하기: 다음 명령어를 입력하여 가져온 브랜치를 확인합니다.
git branch -r
이 명령어를 입력하면 프로젝트의 모든 브랜치가 터미널에 표시됩니다.
결론:
이렇게하면 Git에서 모든 브랜치를 가져올 수 있습니다. Git을 효과적으로 활용하여 프로젝트를 관리하고 협업하는 데 유용한 기능이라 할 수 있습니다. 모든 브랜치를 가져오는 단계를 정확히 따라하는 것은 프로젝트 관리의 핵심 요소 중 하나입니다. 시간과 비용을 절약하며 프로젝트의 효율성을 높이기 위해 Git 브랜치 기능을 활용하시기 바랍니다.

반응형
Comments