본문 바로가기

카테고리 없음

[Git] React 형상관리 툴

반응형

 

React 프로젝트에서 형상관리를 위해 널리 사용되는 도구는 Git입니다. Git은 분산 버전 관리 시스템(DVCS)으로, 코드의 변경이력을 추적하고 협업을 지원하는데 매우 강력합니다. Git을 사용하면 여러 개발자가 동시에 작업할 수 있으며, 코드 변경을 쉽게 합치거나 롤백할 수 있습니다.

 

주요 Git 호스팅 서비스

1. GitHub

  • 가장 인기 있는 Git 호스팅 서비스 중 하나로, 오픈 소스 프로젝트와 개인 프로젝트 모두에 널리 사용됩니다.

  • Pull Request, Issues, Action 등을 통해 협업과 CI/CD를 지원합니다.

 

2. GitLab

  • GitHub와 유사하지만 자체 호스팅이 가능한 GitLab은 기업 내 사설 Git서버로 많이 사용됩니다.

  • CI/CD파이프라인, 프로젝트 관리, 코드리뷰등의 기능을 제공합니다.

 

3. Bitbucket

  • Atlassian이 제공하는 Git 호스팅 서비스로, Jira와 같은 다른 Atlassian 도구들과 통합이 용이합니다.

  • 또한, 파이프라인 기능을 통해 CI/CD를 지원합니다.

 

Git 사용 시 유용한 도구들

1. Git GUI 클라이언트

  • SourceTree : Bitbucket과 잘 통합되며, GitHub와 GitLab에서도 사용할 수 있는 GUI클라이언트입니다. 

  • GitKraken : 시각적 인터페이스와 강력한 기능을 제공하는 크로스 플랫폼 Git 클라이언트 입니다.

  • GitHub Desktop : GitHub에서 제공하는 Git클라이언트로, GitHub 사용자에게 최적화되어있습니다.

2. 명령줄 도구

  • Git Bash : Windows 사용자에게 Bash 쉘 환경에서 Git명령을 사용할 수 있게 해 줍니다.

  • Oh My Zsh : Zsh 셀의 플러그인 관리 프레임워크로, Git 명령어를 더 쉽게 사용할 수 있는 플러그인들을 제공합니다.

 

Git을 React프로젝트에서 사용하는 방법

Git 초기화 및 기본 명령어 (bash환경)

1. Git 초기화

git init

2. 원격저장소 추가

git remote add origin <repository-url>

3. 변경사항 추적 

git add .
git commit -m "Initial commit"

4. 원격 저장소로 푸시

git push origin main

 

Git 브랜치전략 

React 프로젝트에서 효율적인 협업을 위해 Git 브랜치 전략을 사용하는 것이 좋습니다. 대표적인 전략은 Git Flow와 GitHub Flow입니다.

 

1. Git Flow

  • main/master : 배포 가능한 상태의 코드만 포함

  • develop : 다음 릴리스를 위한 통합 브랜치

  • feature branches : 새로운 기능 개발을 위한 브랜치

  • release branches : 배포 준비를 위한 브랜치

  • hotfix branches : 배포된 버전의 긴급 수정 브랜치

 

2. GitHub Flow 

  • main :  배포가능한 상태의 코드만 포함.

  • feature branches : 기능 개발을 위한 브랜치. 완료되면 'main' 브랜치로 병합.

 

예시  : React 프로젝트에서 Git 사용

1. 프로젝트 생성 및 초기화

npx create-react-app my-react-app
cd my-react-app
git init
git remote add origin <repository-url>
git add .
git commit -m "Initial commit"
git push origin main

2. 새 기능 개발

git checkout -b feature/my-new-feature
# 새로운 기능 개발
git add .
git commit -m "Add new feature"
git push origin feature/my-new-feature

3. 풀 리퀘스트 생성 및 병합

  • GitHub/GitLab/Bitbucket에서 새 풀 리퀘스트를 생성하고 코드 리뷰 후 'main'브랜치에 병합.

반응형