Git 브랜치 로컬 존재 여부 확인 방법

GitBeginner
지금 연습하기

소개

이 랩에서는 로컬에 Git 브랜치가 존재하는지 확인하는 방법을 배우게 됩니다. 먼저, git branch 명령을 사용하여 모든 로컬 브랜치를 나열하여 기본 출력과 Git 에서 브랜칭의 중요성을 이해하는 것으로 시작합니다.

다음으로, 많은 브랜치를 다룰 때 특히 효율적으로 특정 브랜치 이름을 검색하는 방법을 탐구합니다. git branch --listgrep을 결합하여 검색할 수 있습니다. 마지막으로, 검색 중에 대소문자를 구분하는 브랜치 이름을 처리하는 방법을 배우게 됩니다.

git branch 로 브랜치 목록 확인

이 단계에서는 git branch 명령을 사용하여 Git 저장소의 브랜치를 나열하는 방법을 배우겠습니다. 브랜치는 프로젝트 내에서 병렬 타임라인과 같아서, 주 프로젝트에 영향을 주지 않고 다양한 기능이나 실험을 수행할 수 있게 해줍니다.

먼저, my-time-machine 디렉토리에 있는지 확인합니다. 그렇지 않은 경우, cd 명령을 사용하여 해당 디렉토리로 이동합니다.

cd ~/project/my-time-machine

이제 저장소의 브랜치를 확인해 보겠습니다. 다음 명령을 입력합니다.

git branch

다음과 유사한 출력을 볼 수 있습니다.

* master

이 출력은 몇 가지 정보를 알려줍니다.

  • master: 이것은 브랜치의 이름입니다. 기본적으로 Git 은 새 저장소를 초기화할 때 master라는 브랜치를 생성합니다.
  • *: 별표는 현재 작업 중인 브랜치를 나타냅니다. 이 경우, 우리는 master 브랜치에 있습니다.

브랜치가 왜 중요할까요? 프로젝트의 새로운 기능을 작업하고 있지만, 기존의 작동 버전을 망치고 싶지 않다고 가정해 봅시다. 새로운 브랜치를 생성하고, 거기서 기능을 작업한 다음, 준비가 되면 메인 브랜치로 다시 병합할 수 있습니다. 이렇게 하면 주 프로젝트가 안정적으로 유지되고 안전한 실험이 가능합니다.

다음 단계에서는 새로운 브랜치를 생성하고 브랜치 간을 전환하는 방법을 살펴보겠습니다.

특정 브랜치 이름 검색

이 단계에서는 --list 옵션과 grep을 사용하여 git branch 명령으로 특정 브랜치 이름을 검색하는 방법을 배우겠습니다. 이는 많은 브랜치가 있고 특정 브랜치를 빠르게 찾고 싶을 때 유용합니다.

먼저, 검색할 대상이 있도록 몇 개의 브랜치를 더 생성해 보겠습니다. 브랜치 생성에 대해서는 나중에 자세히 배우겠지만, 지금은 ~/project/my-time-machine 디렉토리에서 다음 명령을 실행하십시오.

git branch feature/new-feature
git branch bugfix/fix-login
git branch experiment/idea1

이제 모든 브랜치를 다시 나열하여 새 브랜치를 확인해 보겠습니다.

git branch

별표가 여전히 master에 있는 다음과 유사한 출력을 볼 수 있습니다.

bugfix/fix-login
experiment/idea1
feature/new-feature
* master

이제 "feature"라는 단어를 포함하는 브랜치만 보고 싶다고 가정해 보겠습니다. git branch --listgrep 명령을 결합하여 출력을 필터링할 수 있습니다. grep은 정규 표현식과 일치하는 줄을 찾기 위해 일반 텍스트 데이터 세트를 검색하는 강력한 명령줄 유틸리티입니다.

다음 명령을 실행합니다.

git branch --list | grep "feature"

| 기호는 파이프라고 합니다. 왼쪽 명령 (git branch --list) 의 출력을 가져와 오른쪽 명령 (grep "feature") 의 입력으로 보냅니다.

다음과 같은 출력을 볼 수 있습니다.

feature/new-feature

이것은 "feature"라는 단어를 포함하는 브랜치만 표시합니다. 이 기술은 많은 수의 브랜치가 있고 특정 브랜치 또는 관련 브랜치 그룹을 빠르게 찾아야 할 때 매우 유용합니다.

대소문자 구분 브랜치 이름 처리

이 단계에서는 브랜치 이름을 검색할 때 대소문자 구분을 처리하는 방법을 살펴보겠습니다. 기본적으로 grep은 대소문자를 구분하므로 "feature"와 "Feature"는 서로 다릅니다.

~/project/my-time-machine 디렉토리에서 다른 대소문자를 사용하여 다른 브랜치를 생성해 보겠습니다.

git branch Feature/Another-Feature

이제 모든 브랜치를 다시 나열합니다.

git branch

다음과 같은 출력을 볼 수 있습니다.

bugfix/fix-login
experiment/idea1
Feature/Another-Feature
feature/new-feature
* master

이전의 grep "feature" 명령을 사용하면 소문자 "feature"가 있는 브랜치만 찾습니다.

git branch --list | grep "feature"

출력:

feature/new-feature

grep으로 대소문자를 구분하지 않는 검색을 수행하려면 -i 옵션을 사용할 수 있습니다. 이렇게 하면 grep이 일치할 때 대소문자를 무시하도록 지시합니다.

다음 명령을 시도해 보십시오.

git branch --list | grep -i "feature"

이제 출력에는 대소문자에 관계없이 두 브랜치가 모두 포함됩니다.

Feature/Another-Feature
feature/new-feature

이는 브랜치 이름의 정확한 대소문자를 모르는 경우 또는 이름 지정 방식에 관계없이 주제와 관련된 모든 브랜치를 찾고 싶을 때 유용한 기술입니다.

-i와 같은 옵션으로 grep을 사용하는 방법을 이해하면 Git 저장소를 탐색하고 관리하는 능력이 크게 향상될 수 있으며, 특히 저장소가 커지고 복잡해질수록 더욱 그렇습니다.

요약

이 랩에서는 Git 브랜치가 로컬에 존재하는지 확인하는 방법을 배웠습니다. 먼저, git branch 명령을 사용하여 저장소의 모든 로컬 브랜치를 나열하는 것으로 시작했으며, 별표가 현재 활성 브랜치를 나타낸다는 것을 이해했습니다. 이 기본적인 명령은 프로젝트 내에서 서로 다른 개발 타임라인을 탐색하고 관리하는 데 매우 중요합니다.

그런 다음 git branch --listgrep을 결합하여 특정 브랜치 이름을 검색하는 방법을 살펴보았습니다. 이 기술은 수많은 브랜치가 있는 저장소에서 특히 유용하며, 원하는 브랜치를 효율적으로 식별할 수 있습니다. 또한 브랜치 이름을 검색할 때 대소문자 구분 중요성에 대해서도 간략하게 언급했습니다.