분산 Git 사용법
Git은 분산 버전 관리 시스템(DVCS)으로, 여러 개발자가 효율적으로 협업할 수 있도록 돕습니다. 이 글에서는 분산 Git의 기본 사용법을 소개합니다.
분산 워크플로우
분산 Git 워크플로우는 다양한 협업 방식을 지원합니다. 주요 워크플로우에는 중앙 집중형 워크플로우, 통합 관리자 워크플로우, 독재자와 중위 워크플로우가 있습니다.
중앙 집중형 워크플로우
모든 개발자가 단일 중앙 저장소에 접근하여 작업하는 방식입니다.
$ git clone https://github.com/user/repo.git
$ git commit -m "commit message"
$ git push origin master
통합 관리자 워크플로우
각 개발자가 자신의 포크를 가지고 있으며, 변경 사항을 통합 관리자가 병합합니다.
$ git clone https://github.com/user/repo.git
$ git remote add upstream https://github.com/original/repo.git
$ git fetch upstream
$ git merge upstream/master
독재자와 중위 워크플로우
중앙 관리자(독재자)가 최종 병합을 담당하고, 중위들이 각자의 브랜치에서 작업을 관리합니다.
$ git checkout -b new-feature
$ git commit -m "add new feature"
$ git push origin new-feature
$ git request-pull origin new-feature https://github.com/original/repo.git
프로젝트에 기여하기
Git을 사용하여 오픈 소스 프로젝트에 기여하는 방법을 알아봅니다.
커밋 가이드라인
프로젝트에 기여할 때는 커밋 메시지 규칙을 준수해야 합니다.
$ git commit -m "Brief summary of changes
>
> Detailed explanation of changes after a blank line"
개인 팀
소규모 팀은 비공개 저장소를 사용하여 협업할 수 있습니다.
$ git init --bare /path/to/repo.git
$ git remote add origin user@server:/path/to/repo.git
$ git push origin master
퍼블릭 프로젝트 포크
퍼블릭 프로젝트는 포크를 통해 기여할 수 있습니다.
$ git clone https://github.com/original/repo.git
$ git remote add fork https://github.com/user/repo.git
$ git push fork master
프로젝트 유지 관리
프로젝트 유지 관리는 효율적인 협업을 위해 중요합니다.
주제 브랜치에서 작업
주제 브랜치를 사용하여 기능별로 작업을 분리할 수 있습니다.
$ git checkout -b feature-branch
$ git commit -m "start feature"
$ git push origin feature-branch
이메일로 패치 적용
이메일로 전송된 패치를 적용할 수 있습니다.
$ git am < patch.mbox
기여된 작업 통합
기여된 작업을 통합하려면 병합 또는 리베이스를 사용할 수 있습니다.
$ git checkout master
$ git merge feature-branch
릴리스 태깅
릴리스를 태그하여 특정 시점을 기록할 수 있습니다.
$ git tag -a v1.0 -m "version 1.0"
$ git push origin v1.0
분산 Git의 기본 사용법에 대해 알아보았습니다. 이 명령어들을 사용하여 분산 환경에서 Git을 효과적으로 관리할 수 있습니다.