GIT 저장소 만들기

2025. 12. 15. 12:22Git/Git 기초

Git을 처음 시작할 때 가장 먼저 마주하는 단계인 저장소 생성에 대해 정리했습니다.

로컬에서 프로젝트를 시작하는 방법(init)과 원격 저장소 내용을 가져오는 방법(clone)의 차이를 명확히 이해하는 것이 핵심입니다. 출처 : GIT 저장소 만들기

📌 핵심 요약

  • Git을 처음 사용할 때 꼭 알아야 하는 기본 흐름
  • 저장소 생성, 파일 추적, 커밋, 원격 저장소 연결 방법
  • 출처: GIT 저장소 만들기 (2장)

 


1️⃣ Git 저장소를 시작하는 두 가지 방법

Git으로 프로젝트 관리를 시작하는 방법은 크게 두 가지가 있습니다.

1. 기존 디렉토리를 저장소로 초기화 (git init)

아직 버전 관리를 하지 않고 있는 내 컴퓨터(로컬)의 프로젝트 폴더에 Git을 적용하는 방법입니다.

명령어:

cd /path/to/my_project
git init
  • 결과: 실행 후 프로젝트 폴더 안에 .git이라는 숨김 폴더가 생성됩니다.
  • 주의: .git 폴더가 생성되었다고 해서 파일들이 자동으로 관리되는 것은 아닙니다. 아래 명령어로 파일을 추적(Staging)하고 저장(Commit)해야 합니다.
git add .
git commit -m "초기 커밋 메시지"

2. 기존 저장소를 복제 (git clone)

Github나 GitLab 등 이미 존재하는 원격 저장소를 내 컴퓨터로 통째로 복사해오는 방법입니다.

명령어:

# 기본 사용법
git clone <url>

# 예시
git clone https://github.com/libgit2/libgit2
  • 결과:
    • URL의 프로젝트 이름(libgit2)으로 새 폴더가 생성됩니다.
    • 내부에 .git 디렉토리가 자동으로 포함됩니다.
    • 가장 최신 커밋 버전의 파일들이 자동으로 받아집니다 (Checkout).

💡 Tip: 다른 폴더 이름으로 복제하고 싶다면?

명령어 뒤에 원하는 폴더명을 적어주면 됩니다.

Bash
 
$ git clone https://github.com/libgit2/libgit2 mylibgit

2️⃣ git init 자세히 보기 : "저장소를 등록한다"

git init은 단순히 폴더를 만드는 것이 아니라, 현재 디렉토리를 Git이 관리하는 '저장소(Repository)'로 등록하는 과정입니다.

이 명령어를 실행하면 생성되는 .git 폴더에는 다음과 같은 핵심 정보들이 담깁니다.

  • HEAD: 현재 작업 중인 브랜치 정보
  • config: 프로젝트 별 설정 정보 (사용자 정보, 원격 주소 등)
  • objects/: 커밋, 트리, 블롭(파일 내용) 등 실제 데이터 객체
  • refs/: 브랜치, 태그 등의 참조 포인터

✅ 기본 브랜치 설정 (main vs master)

초기화 시 기본적으로 master 혹은 main 브랜치가 생성됩니다. 최근에는 main을 기본으로 쓰는 추세입니다. 만약 기본 브랜치 이름을 변경하고 싶다면 아래 설정을 사용하세요.

Bash
 
git config --global init.defaultBranch main

요약하자면:

  1. 등록: git init (Git아, 여기 관리해줘!)
  2. 추적: git add (이 파일들 관리 대상이야.)
  3. 기록: git commit (현재 상태를 저장할게.)
  4. 연결: git remote add ... (원격 저장소랑 연결할게.)

3️⃣ git clone 자세히 보기 : 원격 저장소 복제

git clone은 단순 다운로드가 아닙니다. 원격 저장소의 모든 히스토리(커밋 기록)를 포함한 완전한 사본을 만듭니다.

  • Git은 분산 버전 관리 시스템이므로, 중앙 서버가 망가져도 누군가가 clone 받은 로컬 저장소가 있다면 완벽한 복구가 가능합니다.
  • 프로토콜: HTTPS, SSH 등 다양한 방식을 지원합니다.
Bash
 
# HTTPS 방식 (가장 흔함)
https://github.com/user/repo.git

# SSH 방식 (보안키 사용)
git@github.com:user/repo.git

4️⃣ 운영체제별 경로 이동 예시

터미널에서 프로젝트 폴더로 이동(cd)하는 경로는 OS마다 조금씩 다릅니다.

OS 명령어 예시
Linux cd /home/user/my_project
macOS cd /Users/user/my_project
Windows cd /c/user/my_project (Git Bash 기준)

5️⃣ 마무리: 핵심 명령어 요약

항목 명령어 / 설명
저장소 생성 git init (현재 폴더를 Git 저장소로 변환)
관리 정보 .git 폴더 (이걸 지우면 버전 정보가 다 날아감)
파일 추적/저장 git add / git commit
저장소 복제 git clone <url> (원격 내용을 로컬로 복사)
원격 연결 git remote add origin <url> (init 후에 연결 시 필요)