임베디드 관련 카테고리/Github

GitHub 저장소에 독립적인 브랜치 추가하기: 용량 최적화 가이드

CBJH 2025. 3. 17.
728x90
반응형

https://gitprotect.io/blog/how-to-create-a-new-branch-in-github/

🔍 문제 상황

GitHub에 이미 존재하는 저장소에 완전히 새로운 코드를 추가하고 싶지만, 기존 코드의 히스토리나 파일은 필요 없는 경우가 있습니다. 특히 저장소 용량을 최소화하면서 프로젝트를 관리하고 싶을 때 유용한 방법을 소개합니다.

💡 해결책: Orphan 브랜치 사용하기

Git의 --orphan 옵션을 사용하면 기존 브랜치의 히스토리나 파일을 상속받지 않는 완전히 독립적인 브랜치를 생성할 수 있습니다.

📝 단계별 가이드

1. 저장소 클론하기

먼저 대상 저장소를 로컬에 클론합니다:

git clone https://github.com/사용자명/저장소명.git
cd 저장소명

2. Orphan 브랜치 생성하기

히스토리가 없는 새로운 브랜치를 생성합니다:

git checkout --orphan 새브랜치명

3. 현재 스테이징 영역 비우기

기존 파일들을 모두 제거합니다:

git rm -rf .

4. 새 프로젝트 파일 추가하기

이제 원하는 프로젝트 파일을 이 디렉토리에 복사합니다.

5. 변경사항 커밋하기

새 파일들을 스테이징하고 커밋합니다:

git add .
git commit -m "Add new project files"

6. 브랜치 푸시하기

새 브랜치를 GitHub에 푸시합니다:

git push -u origin 새브랜치명

🌟 이 방법의 장점

  • 용량 최적화: 기존 저장소의 히스토리를 포함하지 않아 저장소 크기를 최소화합니다.
  • 독립성: 기존 코드베이스와 완전히 독립적인 프로젝트를 유지할 수 있습니다.
  • 같은 저장소 활용: 새 저장소를 만들지 않고도 기존 저장소 내에서 관리할 수 있습니다.

📌 주의사항

  • Orphan 브랜치는 기존 브랜치와 공통 히스토리가 없어 병합이 복잡할 수 있습니다.
  • 이 방법은 완전히 별개의 프로젝트를 같은 저장소에서 관리할 때 적합합니다.

🔄 실제 사용 예시

# 저장소 클론
git clone https://github.com/test-repository/my-repository.git
cd my-repository

# 새 orphan 브랜치 생성
git checkout --orphan new-branch-01

# 기존 파일 모두 제거
git rm -rf .

# 새 프로젝트 파일 복사 후
# (이 단계에서 프로젝트 파일을 디렉토리에 복사)

# 변경사항 커밋 및 푸시
git add .
git commit -m "Add new-branch-01 project"
git push -u origin new-branch-01

이 방법을 통해 GitHub의 같은 저장소에서 여러 독립적인 프로젝트를 효율적으로 관리할 수 있습니다.

댓글