Git & Github

Younha Lee·2025년 12월 31일

TIL

목록 보기
2/70

Git은 분산식 버전 관리 시스템

지난 시간에 버전 관리 시스템의 개념을 배웠다면, 오늘은 실제로 가장 많이 쓰이는 분산형 VCS인 Git과 이를 더 강력하게 만들어주는 GitHub에 대해 알아봤어요.


1. Git과 GitHub

Git은 내 컴퓨터(로컬 환경)에서 유의미한 수정 사항인 '버전'을 관리할 수 있게 해줘요. 매번 파일을 복사해서 '최종', '진짜최종' 같은 이름을 붙이는 수고를 덜어줘요.

🏠 Git (로컬 저장소)

  • 역할: 내 컴퓨터 안에서 코드의 변화를 기록해요.
  • 장점: 인터넷 연결 없이도 작업 이력을 남길 수 있어요.

🌐 GitHub (원격 저장소)

  • 역할: 내 컴퓨터가 아닌 외부 서버에 코드를 백업하고 관리해요.
  • 의미: 'Git'의 'Hub'라는 뜻으로, 여러 컴퓨터를 연결해 협업할 수 있게 도와주는 공간이에요.
  • 특징: 로컬과 원격의 버전은 따로 관리돼요.
    내가 원할 때만 로컬의 변화를 GitHub에 반영할 수 있어서 협업이 훨씬 안정적이에요.

2. CLI vs GUI

Git을 사용하는 방법은 크게 두 가지로 나뉘어요.

방식설명특징
CLI (Command Line Interface)터미널에 글자를 직접 입력해서 명령하는 방식빠르고, 모든 기능을 세밀하게 제어할 수 있어요.
GUI (Graphical User Interface)마우스 클릭으로 화면의 버튼을 눌러 조작하는 방식눈에 잘 들어오고 배우기 쉬워요.

터미널 기본 명령어

Git 명령어를 배우기 전에, 터미널에서 디렉토리와 경로를 다루기 위해 꼭 알아야 하는 명령어들이에요.

  • ls: 현재 폴더에 어떤 파일들이 있는지 목록을 보여줘요.
  • mkdir: 새로운 폴더를 만들 때 사용해요.
  • cd : 작업하고 싶은 폴더로 위치를 이동해요.

  • 깃 실습을 위해 깃 히스토리 extension을 설치해줍니다.

3. Git의 핵심 명령어 5가지

실제로 터미널에서 자주 사용하는 명령어들을 정리해봤어요.

① git init

Git이 이 디렉토리를 관리하기 시작하는 단계예요. 실행하면 숨겨진 폴더인 .git이 생성되면서 버전 관리 준비가 완료돼요.

② git status

현재 폴더의 상태를 확인해요. 어떤 파일이 수정되었는지, 혹은 아직 Git이 관리하지 않는(Untracked) 파일이 무엇인지 알려줘요.

③ git add [파일명]

수정된 내용 중 버전에 담고 싶은 파일을 장바구니에 담는 과정이에요. 이 상태를 'Staging Area에 올라갔다'고 말해요.

④ git commit

장바구니에 담긴 파일들을 하나의 유의미한 버전으로 저장하는 명령어예요. 이때 꼭 메시지를 남겨서 어떤 작업을 했는지 기록해야 해요.

  • i 키를 눌러 입력 모드로 전환하고 메시지 작성
  • Esc 키를 누른 후 :wq를 입력해 저장하고 나가기
  • -c를 붙여서 커밋 메세지를 바로 작성한 채로 커밋할 수 있어요.

⑤ git log

지금까지 내가 쌓아온 커밋의 역사와 기록을 쭉 살펴볼 수 있어요.

  • 이 외에 git remote -v를 하면 원격 레포가 무엇인지 알 수 있어요

4. GUI로 복습하기

  • U (Untracked): 아직 관리되지 않는 새 파일
  • A (Added): 커밋하기 위해 등록된(add 된) 파일
    이렇게 아이콘으로 상태를 바로 확인할 수 있어서 편리해요

아래는 실습한 화면들이에요

  • git status를 사용해봤어요.
  • git add 후 git status로 staging area에 들어간 younha.txt 를 확인 가능해요
  • git commit으로 커밋해요

5. GitHub는 공유와 백업의 중심

GitHub는 단순히 코드를 올리는 곳을 넘어 전 세계 개발자들과 소통하는 공간이에요.

  • 내 코드를 안전하게 원격 백업할 수 있어요.
  • 다른 사람과 코드를 주고받으며 협업할 수 있어요.
  • 대부분 오픈 소스로 운영되어 누구나 코드를 보고 발전시킬 수 있어요.

💡 오늘 배운 내용 요약

  • Git은 내 컴퓨터에서, GitHub는 인터넷 공간에서 버전을 관리해요.
  • CLI는 명령어로, GUI는 마우스로 조작해요.
  • ls, mkdir, cd로 터미널에서 디렉토리와 경로를 관리할 수 있어요.
  • init -> add -> commit 순서로 버전을 만들어요.
profile
할 땐 하고 놀 땐 노는 일일놀놀입니다.

0개의 댓글