2024. 10. 7. 16:33ㆍ부트캠프
Git은 로컬에서 버전 관리를 해주는 도구이고, Github는 이를 클라우드에서 호스팅해 협업을 원활하게 해주는 플랫폼입니다.
## 1. Git 설정하기
먼저 Git을 로컬에 설치해야 합니다. OS에 따라 설치 방법이 다릅니다.
### 1.1 Git 설치
- **Windows**: [Git for Windows](https://gitforwindows.org/)에서 다운로드 후 설치하세요.
- **Mac**: 터미널에서 아래 명령어로 설치할 수 있습니다.
```bash
brew install git
```
- **Linux (Ubuntu)**: 터미널에서 아래 명령어로 설치하세요.
```bash
sudo apt install git
```
설치 후, Git 설정을 해줍니다.
### 1.2 사용자 정보 설정
Git을 사용하려면 사용자 정보 설정이 필요합니다. 이는 커밋 시 기록되는 이름과 이메일 주소입니다.
```bash
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com"
```
### 1.3 설정 확인
설정된 정보는 아래 명령어로 확인할 수 있습니다.
```bash
git config --global --list
```
---
## 2. Git 기본 명령어
Git의 핵심 명령어들을 알아보겠습니다. 이 명령어들은 Git을 사용하여 프로젝트를 관리할 때 매우 자주 사용됩니다.
### 2.1 저장소 생성
Git 저장소를 생성하려면 해당 프로젝트 폴더에서 아래 명령어를 실행하세요.
```bash
git init
```
이 명령어는 프로젝트 폴더에 `.git`이라는 숨겨진 폴더를 생성하고, Git 버전 관리를 시작합니다.
### 2.2 저장소 복제
기존 Github 리포지토리를 로컬에 복제하려면 `git clone` 명령어를 사용합니다.
```bash
git clone <repository-url>
```
이 명령어는 Github에 있는 프로젝트를 로컬로 가져옵니다.
### 2.3 상태 확인
현재 작업 디렉토리의 상태를 확인하려면 `git status` 명령어를 사용합니다.
```bash
git status
```
이 명령어는 변경 사항이 있는 파일, 커밋되지 않은 파일 등을 알려줍니다.
### 2.4 파일 추가 (Staging)
변경된 파일을 Git에 추가하려면 `git add` 명령어를 사용합니다.
```bash
git add <파일명>
```
모든 파일을 추가하려면 `.`을 사용합니다.
```bash
git add .
```
### 2.5 커밋
변경 사항을 저장하려면 커밋을 해야 합니다. `git commit` 명령어로 가능합니다.
```bash
git commit -m "커밋 메시지"
```
메시지는 변경 사항에 대한 간결한 설명을 작성하면 됩니다.
---
## 3. Github와 연동하기
로컬에서 작업한 내용을 Github에 올려 협업을 할 수 있도록 설정해봅시다.
### 3.1 Github 리포지토리 생성
1. Github에 접속 후, 상단 오른쪽의 **New** 버튼을 클릭하여 새 리포지토리를 생성하세요.
2. 리포지토리 이름과 설명을 입력하고, Public 또는 Private 여부를 설정한 후 **Create repository**를 클릭하세요.
### 3.2 원격 리포지토리 연결
로컬 Git 저장소와 Github 리포지토리를 연결하려면 아래 명령어를 사용하세요.
```bash
git remote add origin <repository-url>
```
연결되면 로컬에서 작업한 내용을 Github에 푸시할 수 있습니다.
### 3.3 Push
로컬에서 작업한 내용을 Github에 올리려면 `git push` 명령어를 사용합니다.
```bash
git push -u origin master
```
---
## 4. 브랜치 활용하기
브랜치는 새로운 기능을 개발하거나 버그를 수정할 때 매우 유용합니다. 브랜치를 사용하면 주 작업 흐름을 방해하지 않고, 독립적인 작업이 가능합니다.
### 4.1 브랜치 생성
새로운 브랜치를 생성하려면 아래 명령어를 사용하세요.
```bash
git branch <브랜치명>
```
### 4.2 브랜치 이동
생성한 브랜치로 이동하려면 `git checkout` 명령어를 사용합니다.
```bash
git checkout <브랜치명>
```
또는, 브랜치 생성과 동시에 이동할 수 있는 명령어도 있습니다.
```bash
git checkout -b <브랜치명>
```
### 4.3 브랜치 목록 확인
현재 브랜치 목록을 확인하려면 `git branch` 명령어를 사용하세요.
```bash
git branch
```
### 4.4 브랜치 병합
기능 개발이나 버그 수정이 완료되면 브랜치를 `master` 또는 `main` 브랜치에 병합해야 합니다. `git merge` 명령어로 가능합니다.
```bash
git checkout master
git merge <브랜치명>
```
병합 후에는 브랜치를 삭제해도 됩니다.
```bash
git branch -d <브랜치명>
```
---
## 5. 이슈 관리 및 협업
Github의 이슈(issues) 기능을 사용하면 프로젝트에서 발생하는 문제나 개선 사항을 기록하고 관리할 수 있습니다.
### 5.1 이슈 등록
Github 리포지토리의 상단 메뉴에서 **Issues** 탭을 클릭한 후 **New Issue** 버튼을 눌러 새로운 이슈를 등록할 수 있습니다.
### 5.2 커밋에 이슈 연동
커밋 메시지에 이슈 번호를 언급하면 해당 이슈와 커밋이 자동으로 연결됩니다. 예를 들어, `#1`번 이슈를 해결하는 커밋을 만들려면 아래와 같이 작성합니다.
```bash
git commit -m "Fix bug related to user login #1"
```
### 5.3 Pull Request
작업한 내용을 팀원들과 공유하려면 Pull Request를 생성합니다. Pull Request는 다른 사람이 내 코드를 리뷰할 수 있게 도와주는 협업 도구입니다.
1. Github 리포지토리에서 **Pull requests** 탭을 클릭하세요.
2. **New pull request**를 클릭하여 내가 작업한 브랜치와 병합할 브랜치를 선택하세요.
3. 내용을 검토한 후 **Create pull request** 버튼을 눌러 요청을 보냅니다.
---
## 6. Git을 통한 병합 충돌 해결
가끔 브랜치를 병합할 때 충돌이 발생할 수 있습니다. 이때 Git이 자동으로 해결하지 못하는 경우 직접 충돌을 해결해야 합니다.
### 6.1 충돌 확인
병합 중 충돌이 발생하면 Git은 해당 파일을 표시하고 충돌이 발생한 부분을 아래와 같은 형식으로 표시합니다.
```plaintext
<<<<<<< HEAD
내가 작업한 내용
=======
다른 사람이 작업한 내용
>>>>>>> feature-branch
```
### 6.2 충돌 해결
파일을 열어 양쪽 내용을 검토한 후, 원하는 내용으로 수정하세요. 충돌을 해결한 후에는 파일을 `add`하고 다시 커밋을 합니다.
```bash
git add <파일명>
git commit
```
---
'부트캠프' 카테고리의 다른 글
계산기 웹사이트 만들기 - HTML, CSS, JS (0) | 2024.10.15 |
---|---|
Javascript 자바스크립트 기본 문법 (2) | 2024.10.11 |
HTML / CSS (0) | 2024.10.07 |
온보딩 프로젝트 - 무료 샘플 배포 플랫폼 (2) | 2024.09.28 |
마크다운 문법 (1) | 2024.09.23 |