본문 바로가기

깃 Git

깃이란? 깃허브란? - 간단하게 보는 Git과 GitHub

당혹스러웠다. 몇 날 며칠을 밤새워 만든 프로젝트는 한순간에 실수로 없는 것만도 못하게 되어버렸으니 말이다. 개인적인 사이드프로젝트였다면 에잇 하고 그냥 접어버리면 될 텐데 나에게 돈을 지불한 클라이언트가 결과물을 기다리고 있으니... 난 머리를 몇 번 쥐어뜯으며 내적 고함을 지른 뒤 다시 자리에 앉았다. 혹여나 데드라인을 맞추지 못할까 흐르는 식은땀을 닦으며 귀찮음에 작은 배움을 미뤘던 날 수 없이 원망했다. Git... 버전 관리 시스템을 미리 배워놓았더라면 커피 한잔을 노트북에 쏟은 대가가 이렇게 무겁진 않았을 텐데. 

 

깃. 프로그래밍 언어도 아니고 무언가 대단한 결과물을 만들어내는 프레임워크도 아니다. 프로그램 개발을 위해 꼭 알아둘 필요가 있다는 것은 알겠는데 대체 무엇이길래 우릴 이렇게 귀찮게 할까?

 

 

깃(Git) 이란 무언인가?

버전관리 시스템이며 동시에 개발자가 장소에 구애받지 않고 다른 개발자와 원격으로 함깨 일할 수 있게 해준다. 깃을 사용하면 인터넷과 노트북만 있다면 된다면 세계 어느 곳이든 여행하며 일을 할 수 있게 해준다는 것이다. 깃과 깃허브가 무엇이고, 어떤 역할을 하는지 알아보자.

 

1. 버전관리(백업, 업데이트)

위에 상황과 같이 클라이언트에게 의뢰를 받아 소프트웨어를 제작한다고 가정해보자. 한번 만들면 끝인 소프트웨어는 발전 가능성이 없기에 바뀌는 클라이언트의 요구를 따라가지 못한다. 소프트웨어라는 것은 그것을 만들고, 운영하는 과정에서 지속적인 업데이트가 발생하게 된다. 버전 1.0, 버전 2.0, 버전 2.1 이런식으로 이전보다 더 나은 버전의 소프트웨어가 배포된다. 

 

하지만 새로운 버전을 배포하고 난 뒤에야 심각한 오류가 발견되는 경우가 종종 있다. 그럴 때는 코드가 어디가 어떻게 바뀌었는지 이전 버전과 비교하며 분석해야 하고, 간혹 이전 버전으로 다시 되돌려놔야 하는 경우가 있다. 이럴 때 필요한 것이 버전관리 시스템이다. 

 

물론 새로운 버전을 업데이트할 때 따로따로 저장해두어 "수정본_1", "수정본_2", "마지막_수정본", "진짜마지막_수정본" 이런 식으로 저장(백업)해 둘 수 있지만 여간 머리 아픈 일이 아닐 수 없다. 갈수록 용량도 많이 차지하게 되면서 파일 정리는 어지러워질 것이다. Git은 버전관리 시스템을 제공해줌으로 우리에게 이런 수고를 덜어주는 기막힌 녀석이다.

 

2. 협업 (GitHub - 개발자들의 SNS)

규모가 큰 프로젝트는 여러 개발자와 협업해야 한다. 협업하는 과정에서 개발자마다 맡은 부분을 개발하게 된다.

프로그램이란 게 각자 맡은 부분이 통째로 조립되어 있어야 테스트도 해보고 하므로 협업에 있어서 자신의 결과물을 타 개발자와 공유하는 것은 상당히 중요한 부분을 차지한다. 깃허브(GitHub)는 개발자들의 SNS 같은 공간인데 Git을 이용해 버전관리를 하는 동시에 타 개발자들과의 결과물 공유를 하는 데 있어 아주 유용한 역할을 해준다. 프로그램에 에러가 났을 때, 언제 누가 어떤 부분을 건드렸는지까지 자세하게 나오기 때문에 어떤 놈(^^)이 소중한 프로잭트에 실수를 저질러놨는지 파악하여 책임을 물을 수도 있다.

 

3. 포트폴리오

개발자들은 프로젝트를 자신의 깃허브(GitHub) 계정에 올려놓음으로 취업용 포트폴리오를 만드는 경우가 많다.  요즘 개발자를 채용하는 회사들 중에 이력서보다 GitHub 계정을 더 눈여겨보는 회사도 많을 거라고 생각한다. GitHub로 만든 포트폴리오는 개발자의 프로젝트부터 협업기록까지 모두 보여주기 때문에, 개발자의 실무에서 필요한 역량(실력과 협업능력)을 판단하는 데 아주 중요한 역할을 한다고 볼 수 있다.

 

마치며..

매도 먼저 맞는 게 낮다. 아직 Git을 배우지 않았다면 하루빨리 배워놓길 추천한다. 공들여 만들어오던 프로젝트를 홀라당 날리고 후회하는 것보다는 뭐든 낫지 않을까. Git 명령어들이 익숙하지 않게 느껴지겠지만 절대 어렵지 않다. 하루에 30분씩 딱 한 달만 하면 아주 자유롭게 Git을 사용할 수 있게 되어 안전한(?) 프로그래밍을 할 수 있게 될 것이다.  

 

아직 GitHub 계정이 없다면 얼른 만들자. 유명한 오픈소스 프로잭드의 소스코드를 두 눈으로 확인하여 실력을 늘려보고 자신만에 멋진 포트폴리오도 만들어보자.

 

깃(Git) 설치하는 방법은 다음 게시물에서 확인하자: https://tech-dev.tistory.com/entry/install-git

 

아래는 GitHub 주소이다:

깃허브(GitHub): https://github.com/

 

Build software better, together

GitHub is where people build software. More than 40 million people use GitHub to discover, fork, and contribute to over 100 million projects.

github.com

아래는 Git을 다운로드 할 수 있는 공식 페이지이다

깃(Git) 공식 페이지:https://git-scm.com/

 

Git

 

git-scm.com