Git

박태진·2022년 3월 16일

1. Git이란?

  • Git은 Source code 저장을 도와주는 프로그램이다.
  • Git을 사용하여 프로그램을 저장하면, 누가/언제/어떤 글자 또는 코드를 변경했는지 알 수 있고, 중요한 코드를 실수로 바꾼 경우 되돌릴 수도 있다.

2. Git의 장점

  • Source code를 주고 받을 필요 없이, 같은 파일을 여러명이 동시에 작업하는 병렬 개발이 가능하다.

  • Branch를 통해 개발한 뒤, 본 프로그램에 합치는 방식으로 개발을 진행할 수 있다.

  • 분산 버전 관리이므로 인터넷이 연결되어 있지 않아도 개발을 진행할 수 있으며, 중앙 저장소가 날라가더라도 다시 원상복구가 가능하다.

  • 개인 프로젝트를 진행하더라도 Git을 통해 버전 관리를 하면 체계적인 개발이 가능해지고, 프로그램이나 패치를 배포하는 과정도 간단해진다.

  • pull을 통해 업데이트를 하고, patch로 파일을 배포해준다.

3. Github란?

  • Git으로 저장한 파일들이 실제로 저장되는 장소이다.

4. Git 용어

1) git init

  • git 하위 디럭토리를 생성한다.(폴더를 만든 후, 그 안에서 명령을 싱행하여 새로운 git 저장소를 생성)

2) git branch

  • 독립적인 공간을 생성한다.
  • branch에서 수정 후 commit하면 독립적인 공간인 ex)branch lab1에만 기록되며 master branch에는 어떠한 영향도 주지 않는다
  • 원하는 만큼 빠르게 branch를 만들 수 있다.

3) git branch -b [브랜치 이름]

  • branch를 생성하고 이동한다.

4) git checkout [브랜치 이름]

  • branch를 이동한다.

5) git branch -d [브랜치 이름]

  • branch를 삭제한다.

6) git commit -m "커밋 메세지"

  • 변경사항을 확정 짓고 commit을 생성한다.

7) git pull [로컬저장소 이름][브랜치 이름]

  • 원격에 저장된 git 프로젝트의 현재 상태를 다운받고 현재 위치한 branch로 병합한다.

8) git push [로컬저장소 이름][브랜치 이름]

  • 로컬 저장소의 내용에서 생성된 brach로 commit된 내용을 원격 서버에 업로드한다.

9) git clone [저장소 경로]

  • 기존 소스 코드를 다운로드 또는 복제한다.

10) git add <파일명>

- commit에 단일 파일의 변경 사항을 포함한다.

11) git add .or *

- commit에 모든 파일의 변경 사항을 포함한다.

12) git status

  • 파일 상태를 확인한다.

13) git log

  • 현재 위치한 branch commit 내용을 확인하고 식별자를 부여한다.

14) git fetch origin

  • 원격에 저장된 git프로젝트의 현 상태를 다운로드한다.

15) git stash

  • 아직 마무리하지 않은 작업을 stack에 잠시 저장한다.

16) git stash pop

  • stack에 잠시 저장된 마무리되지 않은 작업을 꺼내온다.

5. 관련 용어

1) Repository

  • 저장소를 의미하며, 저장소는 History, Tag, Source의 가지치기 혹은 branch에 따라 버전을 저장한다. 저장소를 통해 작업자가 변경한 모든 History를 확인 가능하다.

2) Working Tree

  • 저장소를 어느 한 시점으로 바라보는 작업자의 현재 시점이다.

3) Staging Area

  • 저장소에 Commit 하기 전에 준비하는 위치이다.

4) Commit

  • 현재 변경된 작업 상태를 점검을 마치면 확정하고, 저장소에 저장하는 작업이다.

5) Head

  • 현재 작업중인 branch를 가리킨다.

6) Branch

  • 가지 또는 분기점을 의미한다.
  • 작업시 현재 상태를 복사하여 branch에서 작업을 한 후에 완성 후 Merge 하여 작업한다.

7) Merge

  • 다른 branch의 내용을 현재 branch로 가져와서 합치는 작업이다.

0개의 댓글