[협업 시리즈] Git설치와 기본 명령어

👉 이전 편 : Git의 개념과 Git Tool


이전 글에서는 Git을 왜 사용하는지와 Git을 사용하기 편리하도록 하는 도구들에 대해서 알아보았습니다.
이번 글에는 직접 Git을 설치하여 Github과 연동하고 코드를 Github에 저장하고 불러오는 방법에 대해서 알아보도록 하겠습니다.


1. Git 설치하기

Git은 OS마다 설치방법이 서로 상이합니다. 자신의 개발 환경에 맞는 방법으로 Git을 설치해주세요.


Windows

Git 설명 이미지 1
Git 설명 이미지 2
  • 설치할 때 기본 설정을 유지하면서 진행합니다. 대부분의 설정을 Next하시면 되겠습니다.
    내용이 궁금하시다면 읽어보시는걸로
  • cmd 터미널을 열어서 git --version 명령어를 통해 정상적으로 설치되었는지 확인합니다.
Git 설명 이미지 2

해당 내용이 뜬다면 설치가 완료된 것입니다.


macOS

brew install git

설치 후 버전 확인:

git --version


Linux (Ubuntu 기준)

sudo apt update
sudo apt install git

설치 후 버전 확인:

git --version

2. GitHub 계정생성과 Git 연동


그다음으로 해야 할 작업은 Git과 연동을 시킬 Github 계정과 Repository를 만들어 줘야 합니다.
Repository는 저장소라는 의미로, Git에서 프로젝트의 파일과 변경 이력을 관리하는 공간입니다.


1. GitHub 계정 생성


2. 새 Repository 생성

  • 로그인을 하게 되면, SNS의 메인 화면처럼 내 Dashboard가 기본으로 보이게 됩니다.
    여기서 우측 상단의 프로필 아이콘 → Your repositories → 우측 상단의 초록색 New 버튼을 클릭해 줍니다.
  • Respository name을 입력해줍니다. Repo명은 보통 my-repo 와 같이 케밥케이스를 사용합니다.
선택 사항 설정
  • 어떠한 Repo인지 소개해주는 Description을 작성합니다. ex) “This is my first GitHub repository.”
  • 공개 여부 선택
    • Public : 누구나 볼 수 있음 - 흥미로운 프로젝트는 언제든지 탈취 및 해킹이 가능하단점을 명심하세요!
    • Private : 본인과 초대한 사람만 접근 가능하도록 설정합니다.
  • .gitignore는 Commit시에 제외할 파일 형식을 지정해주는 파일입니다. 보안이 중요한 파일이나, 용량이 큰 라이브러리 등을 gitignore에 등록하여 업로드를 제외해줍니다.
  • 마지막으로 Create repository 버튼 클릭


3. 생성한 Repository를 로컬에 Clone하기

Repo를 생성하게 되면 아래와 같은 화면으로 이동하게 됩니다.

Git 설명 이미지 2

이 화면에서 알려주는 방식으로 Git을 등록해도 되지만, 저는 설명하는 방법과는 다른 방법으로 접근해 보겠습니다.

우선, Repository 경로 ( https://github.com/user_id/repo_name.git ) 를 한번 복사해 봅시다.

그리고 해당 레포를 저장할 폴더나 바탕화면으로 이동해 줍니다.

바탕화면에서는 우클릭으로 cmd를, 폴더에서는 주소창에 cmd를 검색을 해줍니다.

Git 설명 이미지 2

그러면 해당 폴더의 주소를 가진 cmd화면으로 바로 이동이 가능합니다.


이제 cmd 창에 git clone https://github.com/user_id/repo_name.git 을 입력하면 Git과 GitHub이 연동이 안되었다고 뜹니다.
Git과 GitHub을 연동하기 위해선 현재 로컬 기기에 사용자의 email과 name을 등록 해주어야 하기 때문입니다.
아래의 내용을 cmd에 입력해줍니다.

# github에 회원가입한 이메일을 입력해주세요
git config --global user.email "your.email@example.com"

# 커밋시 본인 식별을 할 수 있는 닉네임을 입력해주세요.
git config --global user.name "Your Name"

이후 다시 한번 클론을 하게 되면, Github와 연동을 하겠다는 안내문구가 나오며, Git과 연결된 Repository가 생성이 되는 것을 확인 할 수 있습니다.


해당 폴더에 들어가면 아무 파일이 없는데, 폴더 숨김을 제거하여 .git 폴더를 확인해주세요.


폴더 상단의 점 3개 버튼을 눌러서
설정창열기 → 보기 탭 → 고급 설정 아래로 스크롤 하다보면 숨김 파일, 폴더 및 드라이브 표시 체크 → .git 폴더 확인

Git 설명 이미지 2

이제 Repo가 성공적으로 클론이 되었습니다!


3. Git 기본 명령어 : 커밋, 푸시, 풀

Git을 사용할 때 가장 기본적으로 수행하는 작업은 파일을 추가하고(commit), 원격 저장소에 업로드(push)하고, 최신 변경 사항을 가져오는(pull) 것입니다.


1. 작업한 파일 커밋 및 푸시

Git에서는 변경된 파일을 추적하고 저장하기 위해 커밋(commit)을 사용합니다.

cd repository  # 작업할 레포지토리로 이동

# 파일 생성, 수정, 삭제 작업 진행

# 변경된 파일 확인
git status

# Git에 수정한 파일 추가
git add readme.txt

or

# Git에 수정한 파일 전체 추가
git add .

# Commit
git commit -m "첫 번째 커밋"

# 오리진의 main branch에 push
git push origin main

# 여기까지 로컬 git에서 오리진에 올리기위한 작업이라고 보시면 되겠습니다.
# 1. git add . 을 통해 변경된 파일을 박스에 담아서
# 2. git commit -m "" 을 통해 이름표를 붙인후
# 3. git push를 통해 main 브랜치 주소로 보내기!

💡 언제 사용할까?

  • 프로젝트에 새로운 파일을 추가했을 때
  • 기존 파일을 수정한 후 변경 사항을 저장하고 싶을 때
  • 로컬에서 변경한 내용을 오리진에 기록하여, 후에 변경 내역으로 돌아가고 싶을 때

📌 추가 설명

  • git add readme.txt → 특정 파일만 추가
  • git add . → 변경된 모든 파일 추가
  • git commit -m "메시지" → 커밋 메시지를 포함하여 저장

⚠️ 주의사항 : 커밋 메시지는 변경 사항을 쉽게 이해할 수 있도록 의미 있는 내용으로 작성하는 것이 중요합니다.

  • "버그 수정" → ❌
  • "로그인 기능 오류 수정" → ✅


2. 최신 코드 가져오기 (pull)

다른 사람이 원격 저장소에 업로드한 최신 변경 사항을 가져오려면 pull 명령어를 사용합니다.

# main branch를 가져와라!
git pull origin main

💡 언제 사용할까?

  • 다른 팀원이 내가 작업중인 저장소( branch, 여기서는 main branch )나 상위 Branch를 업데이트했을 때
  • 원격 저장소에서 최신 상태로 동기화하고 싶을 때
  • 내가 작업하기 전에 최신 코드를 가져와 충돌을 방지하고 싶을 때

📌 추가 설명

  • git pull = git fetch + git merge
    • git fetch : 원격 저장소의 변경 사항을 가져오기만 함
    • git merge : 가져온 변경 사항을 현재 브랜치에 병합
  • 만약 충돌이 발생하면 git add .git commitgit push 를 통해서 수정한 코드를 오리진에 보낸 후 Conflict난 부분을 직접 수정 해야 합니다.

⚠️ 주의사항:

  • 내 로컬 코드와 원격 저장소 코드가 다르면 충돌이 발생할 수 있음
  • git pull --rebase를 사용하면 더 깔끔한 히스토리를 유지할 수 있음

4. 자주 발생하는 에러 - LF (줄바꿈) 오류 해결

운영체제마다 줄바꿈 방식이 달라(Git에서 Windows는 CRLF, macOS/Linux는 LF 사용) 줄바꿈 변환 문제가 발생할 수 있습니다. 특히 Windows + Eclipse 환경에서는 자동 변환으로 인해 예상치 못한 변경 사항이 생길 수 있습니다.


1. 현재 설정 확인

git config --global core.autocrlf
  • true → 체크아웃 시 CRLF → LF 변환, 커밋 시 LF → CRLF 변환 (Windows 기본값)
  • input → 체크아웃 시 변환 없음, 커밋 시 LF 유지 (권장)
  • false → 변환 없음 (macOS/Linux 기본값)


2. 해결 방법 (권장 설정)

Windows에서도 LF를 유지하려면:

git config --global core.autocrlf input

이 설정을 적용하면 Git에서 자동 변환 없이 LF 형식을 유지하여 크로스 플랫폼에서 일관된 코드 관리를 할 수 있습니다.


3. 프로젝트별로 설정하려면?

.gitattributes 파일을 추가하여 특정 확장자의 줄바꿈을 고정할 수도 있습니다.

* text=auto
*.sh text eol=lf
*.bat text eol=crlf

마무리…

이번 글에서는 혼자서 Git을 다루는 방법에 대해서 알아보았습니다. 그러나 우리가 Git을 사용하는 이유는 협업을 하기 위함이죠? 다음시간에는 서로의 코드의 충돌을 예방하면서도, 버전관리와 배포에 용이한 브랜치 전략에 대해서 알아보도록 하겠습니다.


👉 다음 편 : Git Branch

Leave a comment