본문 바로가기

Git 그리고 GitHub

GIT/GitHub 시작하기

미리 말씀드립니다.

 

이 포스팅은 인프런에 올라온 진유림님의 '팀 개발을 위한 Git, GitHub 입문' 강의의 'Git 초기화와 로컬 저장소'편을 듣고 정리한 것입니다. 

https://www.inflearn.com/course/%ED%8C%80%EA%B0%9C%EB%B0%9C-%EA%B9%83-%EA%B9%83%ED%97%88%EB%B8%8C/dashboard

 

팀 개발을 위한 Git, GitHub 입문 - 인프런 | 강의

개인 프로젝트부터 현업 개발까지, 팀 개발에 필수적인 기술인 Git과 GitHub을 그림을 통해 쉽게 익힙니다. 아예 처음 익히는 분부터 실무 사례가 궁금한 분까지 모두 들으실 수 있습니다. CLI, GUI를

www.inflearn.com

 

 

 

그리고 추가적인 내용은 이고잉님의 '지옥에서 온 문서 관리자 깃 & 깃허브 입문' 책을 보고 정리했던 내용들임을 밝힙니다.

http://www.yes24.com/Product/Goods/84803146

 

Do it! 지옥에서 온 문서 관리자 깃&깃허브 입문

생활코딩 강의에서 52개를 엄선, 한 권 안에 자주 쓰는 기능은 모두 담았다.문서 지옥, 깃&깃허브로 하루 안에 탈출한다!본서는 대학생, 개발자, 일반 사무직까지. 문서 지옥에 빠진 모두를 위한

www.yes24.com

 

 

 


 

 

Git이란 무엇인가?

위키: 깃은 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 분산 버전 관리 시스템이다. 소프트웨어 개발에서 소스 코드 관리에 주로 사용되지만 어떠한 집합의 파일의 변경사항을 지속적으로 추적하기 위해 사용될 수 있다.

https://ko.wikipedia.org/wiki/%EA%B9%83_(%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4)

 

깃 (소프트웨어) - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 깃저장소 생성, 파일 추가, 원격 동기화를 표시하는 명령 줄 세션원저자리누스 토르발스[1]개발자주니오 하마노(Junio Hamano), 리누스 토르발스 등[2]안정화 버전2.

ko.wikipedia.org

 

 

우리가 한글 파일이든 코드든 수정할 사항이 생기면 항상 "abc_수정1", "abc_수정2", "abc_최종", "abc_진짜최종"... 이런 식으로 수정본을 만드는데 이 때 수정본 하나하나가 '버전'이라고 생각하면 된다.

이 수정본/버전 관리를 도와주는 시스템이 '깃'이라고 생각하면 된다.

타임라인을 상상해보면 된다!

수정본/버전을 작성한 시점들이 쭈욱 찍혀있고 그 사이를 자유롭게 왔다갔다할 수 있다.


좋은 점은 내가 만드는 버전뿐만 아니라 나와 함께 프로젝트를 진행하고 있는 동료가 만든 버전으로 이동할 수도 있고

두 버전 사이를 비교해서 합치는 등 업데이트를 할 수도 있다.

 

그러면 이러한 정보를 담은 깃이라는 시스템을 어디에 저장할 것인가?

물론 개인 컴퓨터에 저장할 수 있다! (USB에 저장할 수도 있다.)

아니면 회사 서버를 사용할 수도 있지만

대부분의 개발자들은 GitHub이나 BitBucket과 같은 클라우드 서비스를 사용한다.

 

일단 자신의 컴퓨터에 저장을 한 경우에, 자신의 컴퓨터는 지역 저장소(local repository)가 된다.

그런데 문제는.. 내 컴퓨터가 그렇게 안전하지는 않을 것이라는 사실!

작업을 하다가 물이나 커피를 쏟을 수도 있고 귀여운 고양이가 지나가다가 내 노트북을 밟아버릴 수도 있다. (고양이는 죄가 없다.)

 

이런 경우를 대비해서 지역 저장소와 원격 저장소(remote repositiory)를 연결해서 파일들을 백업할 수 있다.

원격 저장소는 쉽게 생각하면 내 컴퓨터가 아닌 다른 컴퓨터나 회사 서버에 만든 저장소 같은 것들을 상상하면 된다.

 

이런 원격 저장소를 직접 만들면 좋겠지만! 당연히 쉽지 않다..(약간 주객전도 늒임..)

그래서 개발자들은 원격 저장소를 제공하는 서비스를 주로 사용한다.

GitHub, BitBucket, GitLab등이 유명한 서비스들인데

GitHub이 가장 인기있는 서비스이다!

 

 

 

 

 

 

 

 

 

 

 

정리)

깃이란?

버전 관리 시스템

파일에서 누가, 무엇을, 언제, 어떻게 변경했는지를 변경 시점마다 저장할 수 있다.

각 버전마다 작업했던 내용을 확인할 수 있고

그 버전으로 되돌아갈 수도 있다.

 

깃헙이란?

백업 공간을 제공하는 서비스들 중의 하나이다.

깃의 원격 저장소라고 생각하면 된다.