본문 바로가기

 

Git과 메모장을 사용해서, <1. Git 로컬 저장소에서 커밋 관리하기>를 이해해 봅시다.  

 

 

0.  깃  테스트  파일  준비하기

 

01. 가장 먼저, 원하는 경로에 폴더 하나를 생성합니다. 

더보기

아래 Hello_Git 폴더가 생성된 경로는 하나의 예시입니다.

원하는 경로에 폴더를 생성하시면 됩니다. 폴더의 이름도 원하시는 이름을 사용합니다.

C:\Users\KDT\Downloads\Hello_Git

 

02. 생성한 폴더 안에 <README> 라는 메모장 파일 하나를 생성합니다.

더보기

파일 탐색기에서 마우스 오른쪽 버튼을 클릭하고 새로 만들기 > 텍스트 문서를 클릭합니다.

 

파일 이름을 <README>로 합니다. 

 

@README 텍스트 파일은 일반적으로 프로젝트의 설명이 작성됩니다.

GitHub에서는 README.md 라는 확장자 파일이 사용되는데, Markdown 으로 텍스트 파일과 크게 다르지 않습니다.

Qt README.md 예시 링크

 

03. 생성한 REAME.txt 메모장에 원하는 문장을 입력합니다.

더보기

REAME.txt 텍스트 파일을 열고, 메모장에 원하는 문장을 입력하고, 저장합니다.

 

 

@메모장에서 문장 작성과 소스코드를 작성하는 작업은 다르지 않습니다.

소스코드는,  프로그래밍 언어의 문법 규칙에 맞는 문장으로 작성된 문서입니다.

위 메모장은, 한국어라는 언어의 문법 규칙에 맞는 문장으로 작성된 문서입니다.

 

04. Git Bash 실행 설정을 확인합니다.

더보기

@깃 설치 과정에서 Open Git Bash Here 설정을 체크하고 설치했어야 합니다.

 

 

Open Git Bash Here 을 설정하고 깃을 설치했다면, 원하는 폴더에서 마우스 오른쪽 키를 클릭했을때, Git Bash Here을 클릭할 수 있는 메뉴가 보입니다.

깃 설치 과정에서 Open Git Bash Here 설정을 체크하지 않았다면 해당 메뉴가 없습니다.

 

 

Git Bash 를 실행했다면, 오른쪽의 경로가 내가 실행하고자 하는 경로와 동일한지 다시 한번 확인합니다.

 

 

1.  git에  사용자  정보  등록하기

@깃을 사용할 때, 가장 먼저 내 정보(user name , email)를 등록해야 합니다.

쉽게 생각하면, 로그인 입니다.

가정 먼저 깃에 내 사용자 정보를 등록하는 이유는, 각각의 커밋을 누가 했는지 기록하기 위해서입니다.

git config --global user.name "사용할 이름"
git config --global user.email "사용할 이메일"
더보기

<README.txt>파일을 생성한 Hello_Git 폴더에서 Git Bash를 실행합니다.

Git Bash에서 아래 명령어를 차례대로 입력합니다. 

 

 

 git에 user name을 등록합니다.

git config --global user.name "사용할 이름"

 

 

 git에 email을 등록합니다.

@github에서 사용하는 이메일로 등록합니다.

git config --global user.email "사용할 이메일"

 

 

등록한 user name과 email을 확인합니다.

 

 

-- 등록된 user name과email email을 확인하는 방법

git config --global --list

 

 

-- user name 선택 삭제

git config --global --unset user.name 사용자이름

 

-- user name 전체 삭제

git config --global --unset-all user.name

 

 

-- email 선택 삭제

git config --global --unset user.email 사용자이메일

 

-- email 전체 삭제

git config --global --unset-all user.email

 

2.  git  초기화하기

 

01. <Git Bash>를 실행합니다.

더보기

@깃 설치 과정에서 Open Git Bash Here 설정을 체크하고 설치했어야 합니다.

 

 

원하는 폴더에서 마우스 오른쪽 키를 클릭하고, Git Bash Here을 클릭합니다.

깃 설치 과정에서 Open Git Bash Here 설정을 체크하지 않았다면 해당 메뉴가 없습니다.

 

 

Git Bash 를 실행했다면, 오른쪽의 경로가 내가 작성한 메모장이 있는 경로와 동일한지 다시 한번 확인합니다.

 

02. git init 명령어로 깃 로컬 저장소를 생성합니다.

git init
더보기

Git Bash의 $ 뒤에 명령어를 입력할 수 있습니다. git init 명령어를 입력합니다.

Initialized empty Git repository ~ 라는 텍스트가 출력되면 성공적으로 깃 로컬 저장소가 생성되었음을 의미합니다.

 

 

파일 탐색기 상단의 보기 탭으로 이동합니다.

숨긴 함목을 체크합니다.

<README.txt>파일이 있는 곳에 <. git 폴더>가 생성되어 있음을 확인할 수 있습니다.

(숨김 폴더이기 때문에, 숨김 항목 보기가 필수입니다.)

 

@<.git 폴더>를 로컬 저장소(Local Repository)라고 합니다.

git init 명령어의 init은 "initialize(초기화)"를 뜻합니다. 

git init을 사용해 해당 경로에 깃을 활성화하면, <.git 폴더>가 생성되고, 깃 명령어를 사용 할 수 있습니다.

해당 경로에서 발생하는 모든 수정 사항들을 깃이 추적합니다.

그리고 깃 명령어로 작업한 모든 정보가 <.git 폴더>에 기록됩니다. 

<.git 폴더>가 삭제되면, 모든 깃 작업 내용 삭제됩니다.

 

3.  커밋하기

 

@ 커밋(commit)이란?

git에서 commit은 의미 있는 변경 작업(=버전)들을 git 로컬 저장소에 기록하는 동작입니다.

더보기

깃은 버전을 관리하는 시스템입니다.

깃에서는 버전을 커밋(commit)이라는 단위로 다룹니다.

 

커밋사전적 의미

  1. (그릇된 일·범죄를) 저지르다[범하다]
  2. ~을 마음에 새기다[기억하다]
  3. ~을 적어 두다

깃의 커밋 기능과 가장 유사한 사전적 의미는 "~를 적어 두다" 입니다.
즉, commit 은 의미 있는 변경 작업들을  git 저장소에 저장하는 동작입니다.

 

앞에서 1)메모장을 만들고, 2)git 로컬 저장소를 생성했지만

의미 있는 변경 작업을 git 저장소에 저장하는 동작은 진행하지 않았습니다.

 

커밋(commit)을 작업을 진행해봅시다.

 

01. 깃(git)에 커밋할 파일 추가(add)하기

git add <커밋할 파일 이름>
더보기

커밋(저장)을 하기 전에, 어떤 파일을 커밋(저장)할지 깃에 등록해야 합니다.

 

02. 깃(git)에 의미 있는 변경 작업을 커밋(commit)하고 식별 메시지(-m "msg")를 추가하기

git commit -m "커밋식별문장"
더보기

깃은 버전 관리 시스템이고, 깃은 이 버전을 커밋이라는 단위로 관리합니다.

깃에 커밋(commit)할 파일 추가하기 = 깃에 저장할 파일 추가하기

커밋해 = 저장해

사용자가 문서 제목으로 저장된 문서를 구분하듯, 커밋은 커밋 메시지를 사용해 식별할 수 있어야 합니다.

@ -m 의미는 message입니다.

 

4.  추가  커밋하기

 

@ 커밋(commit)이란?

git에서 commit은 의미 있는 변경 작업(=버전)들을 git 로컬 저장소에 기록하는 동작입니다.

 

 

01. <REAME.txt> 메모장에 추가 문장을 입력합니다.

더보기

 REAME.txt 파일에

 새로운 내용을 추가하여 파일을 저장합니다.

깃이 변경된 사항을 추적합니다.

 

02. 커밋(commit)

더보기

 커밋(저장)을 하기 전에, 어떤 파일을 커밋(저장)할지 지정해야 합니다.

그리고 각각의 커밋들을 사용자가 구분할수 있도록 메시지를 함께 작성합니다. 

 

5.  커밋  목록  확인

git log
더보기

커밋은 저장된 버전입니다.

git log 명령어는 최신 commit부터 리스트로 보여줍니다.

각 commit 들은 커밋할 때 입력한 메시지로 구분할 수 있습니다.

각 commit은 사용자가 입력한 메시지 이외에, 헤시 코드를 아이디로 가집니다.

 

 

- 파일 수정과 커밋(commit) 반복 실습

 

문서를 저장하듯, 소스코드를 커밋이라는 단위로 저장할 수 있습니다.

메모장 수정 > 커밋(commit) 실습을 충분히 진행해 주세요.

 

메모장 수정은 소스코드를 수정하는 것과 동일한 작업입니다.


 

6.  커밋  불러오기(되돌리기)

저장된 문서를 언제든 불러올 수 있듯이, 저장된 커밋도 언제든 불러올 수 있습니다.

개발을 하다가 요구 사항이 바뀌어서 이전 커밋부터 다시 개발하고 싶다면, Git을 이용해 다시 되돌릴 수 있습니다.

 

 

01. 현재 커밋에서 과거 커밋으로 되돌리기

git checkout <커밋 아이디 첫 7자리>
더보기

@checkout 명령어는 현재 실무에서 거의 사용되지 않습니다.

checkout 명령어는 switch, restore 등의 보다 세부 기능으로 나누어졌고, 이 명령어를 주로 사용합니다.

checkout 명령어는 깃과 커밋과 불러오기 구조의 이해를 돕기 위해 이번 실습에서만 사용합니다.

 

git log 명령어로 commit 리스트를 확인하고,

git checkout 명령어로 과거 commit으로 되돌아갑니다. commit id 7자리를 사용합니다.

git checkout 명령을 취소하는 방법입니다.

 

 

커밋을 기준으로 되돌린 텍스트 파일을 확인합니다.

마지막 커밋 시점에서 작성했던 내용이 사라지고, 과거 커밋 시점으로 변경된 것을 확인합니다.

 

03. 과거 커밋에서 현재 커밋으로 복구하기

git checkout -
더보기

@ checkout 명령어는 현재 실무에서 거의 사용되지 않고, 이번 실습에서만 사용합니다.

git checkout - 명령어는 이전에 진행한 checkout 을 취소하는 명령어입니다.

깃과 커밋과 불러오기 구조를 이해하기 위해 이번 실습에서만 사용합니다.

 

REAME.txt 파일이

최신 커밋 기준으로 내용이 복구되었음을 확인합니다.

 

7.  정리  &  실습

 

01. 정리 & 실습

 

git 로컬 저장소를 생성하고, git을 활성화 합니다.

파일 수정 → 커밋할 파일 깃에 추가 → 메시지와 함께 커밋하기 (반복) 

커밋 로그 확인 → 커밋 되돌리기 → 커밋 복구하기

 

02. 실습 

<.git 폴더>를 삭제하고 위 작업을 반복 실습합니다.

 

 

 

 

 

①②③④⑤⑥⑦⑧⑨

BasicLike

어? 나 프로그래밍 좋아하네?