[For beginners] What is Git, and Github? (컨셉잡기)

Do you know git, and GitHub? ̶두̶유̶노̶ ̶김̶치̶?̶
여러분은 git, GitHub가 무엇인지 알고 계십니까?

Rooney Donghoon Lee
5 min readSep 4, 2020

“아, 이름만 들어봤어요.” 또는 “잘 몰라요.” 라고 생각하시는분은 저와 함께 git 과 GitHub 가 무엇인지 알아보도록 하고
git 과 GitHub를 잘 알고있고, 사용하고, 무엇인지 자신있게 설명 하실 수 있는분들은 뒤로가기 누르시거나,
댓글로 추가설명 및, 오류 지적해주시면 감사하겠습니다.

설명에 앞서 제 이야기를 해보자면, 저는 데이터사이언스 과정에 참가하기 이전엔 git, github 뭔지 잘 몰랐습니다.

이런 저런이유로, 깃허브에 들어가 필요한 파일들을 다운보며 든 생각은, 많은 사람들이 깃허브를 이용하여 자신들의 창작물들을 배포?Publish?하는
“파일쉐어링 서비스인가 보다.” 라고 이해하고 있었고.

“깃허브 사용해보신적 있어요?, 깃허브가 뭔지 아세요?”
라고 질문을 받을 때면, “예!” 라고 당당하게 대답했던 적도 있습니다. (모르는 사람이 더 당당하다고… 아무튼…)

어느날 우연히 노마드코더님의 영상 ‘깃. 깃허브. 기초개념 잡아드림. 5분 순삭.’ 보면서도 완전히 이해 하지 못하여 “아… 그런가 봉가…” 하면서 넘어 갔습니다.

“백문이 불여일견; 백번 질문 하는것 보다, 한번 보는것이 낫다.” 라는 말이 있듯이.
어제 Challenge Assignment중 fork, Pull Request 연습하면서, “아, 이게 그 말이구나!?” 라고 깨닫고, 느낌점을 여러분들과 나누어 보려 합니다.

So, what is a git. (GitHub는 조금 뒤에 설명).

위키피디아의 설명을 빌리자면.

“Git is a distributed version-control system for tracking changes in source code during software development.”
“ ‘깃’은 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 분산 버전 관리 시스템이다.”

<img src=”https://t1.daumcdn.net/cafeattach/aVeZ/a4c0e75f12968c6bfd30bed60053ffbf888f3c2f" alt=”이게뭔…” width=”300px”> 라고 느껴지신다면.

#### 그나마 소비자/유저가 사용할 수 있는 가장 git과 비슷한게 하나 있습니다.

맥(Mac)에는 ‘타임머신’이라는 백업 기능이 있습니다.

백업은 언제생길지 모르는/ 혹시 모르는 data loss(데이터 손망실)에 대비하여, 개인에게 중요하다고 판단되는 자료들은, 외장하드, 외장 USB에 복사본을 생성하여 안전하게 보관하는것을 말 합니다.

맥의 타임머신은 사용자 컴퓨터에있는 문서, 사진, 음악과 같은 전반적인 자료들을 ‘안전한 장소’(사용하는 컴퓨터가 아닌, 물리적으로 분리된 공간에) 복사하여 저장하는 일반적인 백업 기능을 수행하지만, 다른 데이터 백업 서비스와 가지는 중요한 차이점이 있습니다.

## 그것은 바로!

<img src=”https://mblogthumb-phinf.pstatic.net/20130406_3/rebirthday83_1365247397721x02e3_PNG/a.png?type=w2" alt=”카페베네_엔딩_크레딧” width=”x%”> ~~커쥬아 마 걸~.~~

**장난입니다.**

## 바로!!!!
#### 타임머신은, 단순히 ‘파일만’ 백업해두지 않습니다.

무슨말이냐 하면, 일반적으로 우리가 생각하는 백업은 복사기로 복사한것과 같이, 똑같은 파일을 만드는것이 아니라,

파일이 어떻게 변경이 되어왔는지를 기록하는 방식입니다.
“그래서 뭐 어쩌라고요…” 라고 생각드시는 분들께 설명을 추가하자면…

“우리는 종종 인생을 살면서, 아 그때로 돌아갈수 있으면 좋을텐데…” 라는 후회를 합니다. ~~(저는 그렇습니다.)~~

타임머신은 적어도 (컴퓨터 상에서 일어났던일 일들에 대해서) 그것을 **가능하게** 해줍니다.
지금은 필요가 없다고 생각되어 무심코 지워버린 문서파일, 사진 파일도, 타임머신을 통해 “시간을 거슬러 올라가다보면” 복구 할 수 있게 해줍니다.

타임머신은 백업된 파일들이 변경된 부분이 있는지 확인하여, 사용자가 파일을 변경 할 때마다, 새로운 **’버전’**을 생성하여.
변경되기 전의 파일(버전 1.0)과, 새롭게 변경된 파일(버전 1.1)을 각 각 저장하여 보관합니다. (버전 컨트롤)

한가지 파일을 여러가지 버전을 저장한다는것은 실제로 불가능한 일은 아니지만,
내 컴퓨터안의 모든 파일들을 내가 혼자서 수작업으로 버전 컨트롤한다고 했을 때 얼마나, 귀찮고 짜증나는 작업이 될까 상상해 보세요…

‘타임머신’은 Mac OS 백업과 컴퓨터 내의 파일들의 버전 컨트롤 수월하게 해주는 애플에서 제공해 주는 Mac OS의 기능.
(Apple Time Machine 은 2007도에 소개가 되었으니 git의 기능 일부분을 일반 사용자가 이용 할 수 있게 해준것.)

# 아니, 그래서 git이 뭐냐고. ~~(버전관리 해준다고!!!!)~~

git은 마치 파일을 24시간 365일 감시 하는것 같아서, 누가, 어떤 파일을, 언제, 어떻게 바꾸었는가(수정하였는가)와 같은 모든것을 기록하여 버전관리 (**_Version-Control_**)를 수월하게 해주는 인터페이스.

# GitHub는 이와 같은 git을 사용하는 사람들을 이어주는 클라우드 플랫폼.

### 우리의 일상에서 사용하는 것으로 비유를 하자면…
G suite으로 파일을 공유를 하면, 여러명이서 동시에 하나의 파일에서 일을 할 수도, 편한시간에 접속하여 일을 가능하게 해주는 건 구글의 클라우드 서비스 덕분입니다.

github는 git을 사용하는 사용자들을 이어 주는 플랫폼이면서, git의 기능도 수행합니다.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

No responses yet

Write a response