책 읽다가 코딩하다 죽을래

git (깃), github(깃허브)에 대해 제대로 배워보는 강의 2장 Git 구조와 사용법 본문

코딩/Git,GitHub

git (깃), github(깃허브)에 대해 제대로 배워보는 강의 2장 Git 구조와 사용법

ABlue 2021. 9. 23. 07:15

 

🧾 이 강의는 시리즈 별로 되어있습니다.

 

git (깃), github(깃허브)에 대해 제대로 배워보는 강의 0장 Git과 GUI,CLI[클릭]

git (깃), github(깃허브)에 대해 제대로 배워보는 강의 1장 Git 설치법[클릭]

git (깃), github(깃허브)에 대해 제대로 배워보는 강의 3장 GitHub[클릭]

git (깃), github(깃허브)에 대해 제대로 배워보는 강의 4장 Branch따는 법 및 PR[클릭]

 

📖 Git 구조

 

 

 Git 은 크게 4가지 작업 공간으로 나뉘어 있다.

 

Working Directory : 현재 작업하고 있는 폴더 

Staging Area버전을 기록할 것들을 옮겨 놓는 장소 

Local Repository : 내 PC에 파일이 저장되는 개인 전용 저장소 

Remote Repository : 파일이 원격 저장소 전용 서버에서 관리되며 여러 사람이 함께 공유하기 위한 저장소

 

Git을 사용하려면 각 작업공간이 무엇을 의미하는지 제대로 파악하여 사용해야 한다.

그림으로만 보면 이해가 안 될 것이다. 지금 당장 실습하여 저 4개의 공간에 대해 알아보자

 

 

📖 Git 실습

 

자신이 작업하고 싶은 폴더에 가서 오른쪽 마우스 클릭 후 Git Bash here을 선택한다.

 

 

그럼 이런 터미널 창이 뜨는데 Git을 시작하겠다는 의미로

git init 을 입력한다

 

 

그럼 이렇게 .git폴더가 뜬다. 이 .git 폴더는 이제 앞으로 이 현재 폴더는 Git 으로써 관리하겠다는 메시지와 같으며 앞으로 폴더 안에 변경 사항을 저 .git 폴더에 저장한다. 

 

 

이렇게 .git 폴더가 있는 작업공간에서 a.txt 를 만들면

 

 

이렇게 Working Directory  a.txt 존재하게 되는 것이다.

 그런데 .git 폴더와 함께 있다고 Git 이 관리하진 않는다.

 

Git 이 관리해주려면 관리받고 싶은 파일들을 Staging Area 공간으로 보내줘야 한다.

Staging Area 공간으로 보내려면 git add a.txt (a.txt를 스테이징 해줘~) 또는 git add . (현재 작업 폴더에 있는 모든 변경사항들을 스테이징 해줘~) 명령어를 써야 한다.

어차피 폴더 안에 a.txt밖에 없으니 git add .를 써도 무관하다.

 

보통 git add . 명령어는 실행 후 아무런 반응이 없다 

 스테이징에 잘 올라갔는지(Staging Area 공간으로 잘 보내졌는지) 확인하고 싶다면

현재 폴더의 상태를 보여주는  git status 명령어를 사용해야 한다.

 

Staging Area 공간으로 들어가지 않았다면 빨간색으로 파일명이 표시되고 들어갔다면 초록색으로 파일명이 표시된다.

 

 

 그럼 지금 이 상태가 된 것이다.

Staging Area공간으로 들어간 a.txt 는 이제 Git의 관리대상이 된 것이다.

 

 이렇게 텍스트 내용이 달라지면

 

 

이렇게 git status 명령어를 통해 수정되었다는 이력이 생긴다.

 

 

하지만 우리의 목표는 변경 내용을 보는 것이 아닌 파일들을 버전별로 관리하겠다는 것이다.

 마치 안드로이드 버전이나 게임 패치 버전처럼 말이다

 

 

어떤 하나의 기능이 완성되었고 하나의 버전으로 남기고 싶다면 git commit 을 사용하자

 

 

 

git commit -m '커밋 메세지'

git commit의 -m은 message의 약자로 버전의 간단한 설명을 남길 수 있다.

커밋 메시지는 유의미해야 한다. 왜냐하면 나중에 우리는 수많은 커밋 중에 메시지를 보고 그 버전을 찾아갈 수 있기 때문이다. 

 

 

 

 그러면 이렇게 커밋 메시지와 함께 버전으로 저장이 되며,

 

a.txt Staging Area에서 Local Repository로 옮긴 것이다. 

 commit을 하게 되면 commit마다 고유의 해쉬 번호가 주어진다.

 

 

commit을 할 때 7자리 숫자로 알려준다.

 

 

하지만 정확히는 30자리나 되는 숫자이며 이 숫자는 각각의 커밋마다 고유하게 식별할 수 있는 고유번호이다.

 

우리는 지금까지 로컬에 Working Directory에 있는 파일을 git의 Local Repository까지 올리는 것까지 해보았습니다.

 

 

위의 사진을 통해 더 많은 명령어를 공부하여 자유자재로 git을 사용해봅시다.

[Git] 과거의 커밋으로 돌아가는 reset 알아보기(GUI ver)[클릭]

[Git] 커밋을 수정하는 revert 알아보기(GUI ver)[클릭]