본문 바로가기

프로그래밍/Git

[Git 요약] 1. Git 기본 이론

1. Git 시작하기

1) 버전 관리 시스템(VCS)

- 버전 관리 시스템: 파일 변화를 시간에 따라 기록한 후에 특정 시점의 버전을 활용할 수 있는 시스템

- Local VCS: 아주 간단한 DB를 사용해서 파일의 변경 정보를 관리하는 시스템

- RCS: VCS 도구 중 하나로 Mac OS X에 내장되어 있다. 기본적으로 Patch Set을 관리한다.

- CVCS: 중앙 집중식 VCS로서 파일 관리 서버를 통해 클라이언트에서 사용한다.

- DVCS: 분산식 VCS로서 저장소 자체를 전부 복제한다. Git이 DVCS에 속한다.

 

2) Git의 탄생

- 역사: 리눅스 커널에서 사용하던 BitKeeper라는 상용 DVCS가 유료로 정책을 변경함으로 인해 리누스 토발즈가 자체 도구로 개발해서 2005년에 탄생

- 목표: 빠른 속도, 단순한 구조, 비선형적인 개발, 완벽한 분산, 대형 프로젝트에도 유용할 것

 

3) Git의 특징

- 데이터를 스냅샷의 스트림으로 취급

- 거의 모든 명령을 로컬에서 실행(오프라인 상태에서 사용 가능)

- 체크섬을 통해 데이터를 관리

- 모든 것을 해시로 식별

- 데이터를 추가할 뿐 되돌리거나 삭제할 방법이 없음

 

4) Git의 상태

- Committed: 데이터가 로컬 데이터베이스에 안전하게 저장된 상태

- Modified: 수정한 파일을 수정한 상태

- Staged: 수정한 파일을 커밋하기 위해 준비된 상태

 

5) CLI와 GUI

- CLI: Command Line Interface의 약어로 Git의 모든 기능을 지원한다.

- GUI: Graphical User Interface의 약어로 다양한 툴이 존재한다. 대표적인 툴로는 SourceTree, GitHub Desktop가 있다.

- GUI 툴 리스트: https://git-scm.com/downloads/guis

 

6) Git 설정

- Git 설치 후 사용환경을 적절히 설정해주어야 한다.

 

- git config라는 도구로 설정 내용을 확인하고 변경할 수 있다.

- system: 시스템의 모든 사용자와 모든 저장소에 적용되는 설정으로 'git config --system' 명령어를 통해 읽고 쓸 수 있다.

- global: 특정 사용자에게만 적용되는 설정으로 'git config --global' 명령어를 통해 읽고 쓸 수 있다. 사용자 정보를 설정해서 커밋 시 사용한다.(커밋 후 변경 불가)

- repository: 특정 저장소에 적용되는 설정으로 Git 디렉토리에 설정파일이 존재한다.

 

- 편집기 설정: 텍스트 편집기를 지정해서 Git에 사용한다. 편집기의 종류에는 vi와 vim, emacs, notepad++ 등이 있다. 명령어는 'git config --global core.editor <편집기>'를 사용한다.

- 설정 확인: 'git config --list' 명령어를 사용해서 모든 설정사항을 확인할 수 있다.

- 도움말: 세가지 방법을 통해 도움말을 사용할 수 있다. ('git help <verb>', 'git <verb> --help', 'man git-<verb>')

 

'프로그래밍 > Git' 카테고리의 다른 글

[Git 요약] 2. Git 기초 사용법  (0) 2019.06.15