본문 바로가기
개발환경/Git & GitHub

Git 과 GitHub

by xangmin 2020. 4. 17.
반응형

 Git과 GitHub의 관계에 대해 간단히 정리하고자 한다. 실습할 내용은 따로 없으니 지나가도 좋다.

 

버전관리의 정리

-버전관리는 변경 사항의 추적

-책갈피는 코드 스냅샷의 참조과 같음

-협업 시 코드에 대한 합의의 과정음

 

버전관리 사용사례

-개발자가 대규모 소프트웨어 개발 프로젝트 일부로 코드를 작성하는 경우

-네트워크 장치를 관리, 구성파일 추적

-조직의 정보 기술(IT) 인프라 일부에 대한 문서를 유지 관리

 

버전관리의 이점

· 수정이력관리

  -시간이 지남에 따라 파일의 상태를 볼 수 있다.

  -문제 발생 이유, 변경이유를 확인가능

· 책임

  -누가, 언제, 왜 변경했는지 확인 가능

· 프로세스, 업무 흐름

  -개발 업무의 가시성이 높아진다.

  -위기 대처

 

버전관리의 역사

-1세대 : 고정 매커니즘(Locking)

-2세대 : 병합 및 커밋 (중앙 집중식 저장소 제공)

-3세대 : 분산환경 제공(Git)

 

Git

-최신 소스코드 버전관리 프로그램

-리눅스 커널 오픈소스를 위해 만들어짐

-오픈소스 개발 버전관리에 사요함

-동시다발적인 브랜치에도 빠른 속도

 

 

Git의 무결성

-Git은 데이터를 저장하기 전에 항상 체크섬을 구하고 그 체크섬으로 데이터를 관리

  (파일을 이름으로 관리하지 않는다. 이름이 바뀌더라도 추적이 가능)

 

 

Git의  특징

-Git으로 무얼 하든 Git 데이터베이스에 데이터가 추가된다. 되돌리거나 데이터를 삭제할 방법이 없다.

-다른  VCS처럼 Git도 커밋하지 않으면 변경사항을 잃어버릴 수 있다.

-하지만, 일단 스냅샷을 커밋하고 나면 데이터를 잃어버리기 어렵다.

 

 

Git의 세가지 상태

-Working Directory : 파일을 생성, 삭제, 변경하는 기본적인 작업공간. 바로 Git Directory에 저장되지 않는다. Staging Area에 등록을 해야 Git Directory에 저장이 가능하다. 즉, 저장하기 위해서는 색인의 과정이 필요하다.

-Staging Area : 파일을 추적할수 있게 색인하는 과정

-Git Directory(Repository) - commit을 통해 올리게 된다.

 

Git Directory

-Git이 프로젝트의 메타데이터와 객체 데이터베이스를 저장하는 곳

-Git 디렉토리가 Git의 핵심이다. 다른 컴퓨터에 있는 저장소를 Clone할 때 Git Directory가 만들어진다.

 

워킹트리(Working Directory)

-워킹 트리는 프로젝트의 특정 버전을 Checkout 한 것.

-Git 디렉토리는 지금 작업하는 디스크에 있고 그 디렉토리 안에 압축된 데이터베이스에서 파일을 가져와서 워킹 트리를 만든다.

 

스테이징 영역

-Staging Area는 Git Directory에 있음

 

GitHub (git은 기술, github는 서비스)

-GitHub는 가장 큰 Git 저장소 호스트

-Git 원격저장소를 제공하는 서비스

-웹 기반 인터페이스, Fork, Pull Request, Issues, 프로젝트 및 GitHub Wiki와 같은 기능을 제공

 

 

출처 : https://www.youtube.com/watch?v=2iaQK-CvIRs&list=PLieE0qnqO2kS1wEteudZ-I30JdvGpdSr3&index=4

반응형

'개발환경 > Git & GitHub' 카테고리의 다른 글

윈도우에서 Git Bash 설치하기  (0) 2021.01.17
기본적인 git 사용법  (0) 2020.08.25
내 컴퓨터에서 Git 시작하기  (0) 2020.04.17
Git 설치하기  (0) 2020.04.17
Git and GitHub  (0) 2020.04.17

댓글