2. Git 이란?

JSLEE·2024년 4월 9일

Git이란?

Git은 많은 개발자들이 유용하게 사용하고 있는 분산식 버전 관리 시스템이다.
Git은 로컬시스템(PC) 측에서 사용하는 프로그램으로, Git 공식 홈페이지에서 다운로드하여 설치할 수 있다.

Git의 특징

  • 버전 관리에 편리하다.
  • 히스토리를 통하여 과거 버전으로의 백업, 복구, 수정 등이 가능하다.
  • Github를 통하여 저장한 버전을 다른 로컬시스템에서 받아서 작업을 수행할 수 있다. 따라서 협업에 용이하다.

Git을 사용하기에 앞서, 우리가 컴퓨터에게 명령을 내릴 수 있는 방법에 대해 알아보자.


CLI , GUI

우리가 컴퓨터의 운영체제에게 명령을 내릴 수 있는 수단은 CLI, GUI가 대표적이다.

1. CLI (Command-Line Interface)

  • 쉘 (터미널 , 배쉬 등... ) 을 이용하여, 문자를 이용하여 명령한다.
    ex) git --version
    GUI가 없던 예전 컴퓨터의 운영체제인 DOS를 생각하면 되겠다.

2. GUI (Graphic User Interface)

  • 꾸며져 있는 아이콘, 그래픽 등을 이용하여 명령한다.
    우리가 보통 사용하는 윈도우의 화면처럼 사용자가 편리하게 이용할 수 있는 인터페이스를 생각하면 된다.

CLI 에서 자주 쓰는 명령어

CLI 에서 기본적으로 알아둬야 할 명령어가 있다.

  1. ls ( list segments ) : 현재 터미널 위치의 파일 목록들을 나열한다. ls -l 처럼 뒤에 하이픈(-) 을 이용하여 부가적인 속성을 설정할 수 있다.
  2. cd ( change directory ) : 현재 터미널 위치를 변경한다. ( cd 디렉토리명 ) 과 같이 사용한다. (cd .. )로도 사용하기도 하는데, 이는 상위 폴더로의 이동을 의미한다.
  3. mkdir ( make directory ) : 현재 터미널 위치에 폴더를 생성한다. ( mkdir 폴더명 ) 과 같이 사용한다.

* 부가적으로, vscode에서는 ctrl+shift+` 를 이용하여 쉽게 터미널을 열 수 있다.


CLI로 Git 사용하기

우리는 Git을 사용할 것이기 때문에, Git을 설치했다면 터미널에서 Git을 통한 명령어를 사용할 수 있다.

자주쓰는 git 명령어

  • git init : 저장소(repository)를 만드는 명령어로, 현재 터미널 위치의 폴더를 저장소로 지정한다. 저장소로 지정하게 되면, .git 이라는 숨겨진 폴더가 생성되고, git을 통한 작업의 처리를 이 폴더에 기록하여 저장한다.
  • git status : 현재 git 저장소의 상태를 나타내준다.
  • git add : 관리할 파일들을 대기열에 추가한다. 여기서 대기열이란, 어떤 파일들을 commit 하고 싶은지 지정할 때 임시로 들어가는 공간이다.
  • git commit : 새로운 버전으로 만든다. 이 명령어를 수행하면 commit message를 작성하라는 메모장 같은게 열린다. 여기서 사용자가 해당 버전에 대한 메모를 남길 수 있다. c를 2번 눌러 수정모드로 변경할 수 있고, esc 버튼으로 벗어난 뒤, :wq 를 입력하여 메모장을 저장하고 종료한다.
  • git log : 현재까지 어떤 버전이 생성되었는지의 기록을 나타내준다.

정리하자면,
1. 최초 실행시 git init으로 관리할 "폴더"를 저장소로써 지정. (.git 폴더 자동 생성)
2. git add 를 통해 관리할 "파일"들을 명시.
3. git commit을 통해 명시된 파일들을 하나의 버전으로써 저장.
4. git log를 통해 저장된 버전을 확인.
과 같다.

각 단계별로 git status를 입력해보며 현 Git의 상태가 어떠한지 알 수 있다.

=============================

GUI로 Git 사용하기

Git을 GUI로 사용한다고 해도, CLI 와 단계의 차이는 없다.
똑같이 init - add - commit - log 의 단계를 거친다.

vscode를 기준으로 Git을 GUI로 사용하는 방법이다.
작성자는 vscode 를 한국어 번역을 다운받아 사용하고 있으므로, 단어가 다를 수 있다.

  1. 3번째탭 "소스제어" 클릭 -> 리포지토리 초기화 클릭
    git init 과 같은 기능이다.

  2. 첫번째 탭에서, 파일 생성 및 파일 이름 옆의 U 자 모양 확인 (untracked를 의미한다.) ->
    다시 3번째탭 "소스 제어" 들어가서 변경사항 확인 ->
    U 모양 옆 " + " 버튼 클릭
    git add 와 같은 기능이다.

  3. 커밋버튼 클릭
    git commit 과 같은 기능이다.
    커밋 메시지 입력 후 , 우상단의 체크표시 클릭하여 완료한다.

commit 까지의 기능들은 vscode에 내장되어 있지만, git log에 관한 사항은 확장프로그램을 이용한다. 5번째 탭의 확장프로그램에서 " git history " 를 검색하여 설치하고 나면,
3번째 소스 제어 탭에서 상단에 시계모양의 기호가 생긴 것을 확인할 수 있다.
그 기호가 git log와 같은 기능을 수행한다.

profile
공부한 내용들을 정리하기 위해 사용하는 블로그입니다.

0개의 댓글