본문 바로가기

[GIT&GITHUB] GIT&GITHUB 이란?

인포꿀팁 발행일 : 2020-10-25

git과 github. 

컴퓨터공학과 학생이거나 개발자과정을 준비하고 있는 사람이라면 들어봤을법한 단어이다.

나같은 경우에는 git과 github가 피상적으로 구글드라이브와 같은 저장공간으로만 사용되는 걸로 인지하고 있었는데 실제 사용을 해보니 그와는 거리가 있음을 깨달았다.

그렇다면 git과 github는 무엇일까?

알아보기전 git이 왜 쓰이는지에 대해서 이해하면 도움이 된다.

먼저 git이란 소프트웨어 버전 관리 도구이다.

이는 형상관리(SCM : Software Configuration Managament) 라고도 부른다.

소프트웨어의 개발과정에서 소프트웨어의 변경 사항을 관리하기 위해 개발된 일련의 활동을 일컫는다.

쉽게 말해 개발자들이 개발을 함에 있어서 개발 코드를 공유하고 수정하기 용이하게 하기위해 사용하는 것이다.

이러한 소프트웨어 버전 관리 도구에는 여러 방식이 존재한다.

1. 공유 폴더 방식

2. 클라이언트/서버 방식 - SVN( 서브버전)

3. 분산 저장소 방식 - GIT

이렇게 3가지로 존재하는데 그중에 GIT은 분산 저장소 방식이라는 방식의 일종이다.

 

그렇다면

분산 저장소 방식은 무엇일까?

간단히 요약해서 말하자만 분산 저장소 방식은 하나의 원격 저장소와 개발자 PC의 로컬 저장소에 함께 저장되어 관리되는 방식을 말한다. 

쉽게 말해 사용하고 있는 나의 LABTOP과 내가 만든 GITHUB의 저장소 이렇게 2로 나뉘어 관리되는 것이다.

이렇게 로컬과 원격 저장소가 나뉘어 작업을 진행하기 때문에 원격 저장소에 문제가 생겨도 로컬 저장소를 활용하여 작업이 가능한 장점이 있다. 

 

GIT은 이러한 분산 저장소 방식 중 한가지 방식이다.

이러한 특징을 가진 GIT은 몇가지 특징을 가지고 있는데,

1. 브랜치(Branch) 를 사용하여 여러가지의 작업을 독립적으로 동시에 할 수 있다.

2. 스냅샷으로 파일의 변화를 저장하여  버전의 흐름 파악을 할 수 있다.

 


(안경잡이 개발자 나동빈님 참고)

GIT의 동작원리

- Working Directory : 작업할 파일이 있는 디렉토리

- Staging Area (index):  커밋을 수행할 파일이 올라가는 영역

- Git Directory : git 프로젝트의 메타 데이터와 데이터 정보가 저장되는 디렉토리(.git 파일)

코드 작업 등록시 순서

지역저장소 -> 원격저장소

add -> commit -> push

 

원격저장소 -> 지역저장소

fetch -> merge   / pull(둘다 한번에 수행) //clone은 처음에 통채로 다운로드시 사용

 

결론적으로 

gitHub은 git이라는 분산저장소 방식의 형상관리도구의 저장소를 의미한다고 볼 수 있다.

'기타 > GIT&GITHUB' 카테고리의 다른 글

git과 이클립스 연동후 commit/push/pull 하기  (0) 2020.11.04
git 과 이클립스 연동하기  (0) 2020.11.04
[GIT&GITHUB] GITHUB 사용법(1)  (0) 2020.10.25

댓글