brunch

You can make anything
by writing

C.S.Lewis

by 아이린 Feb 28. 2018

왜 깃과 깃허브를 사용할까?

개발자들의 페이스북, 깃허브!

위스콘신주립대 의료정보학과 교수 Karl Broman는 깃허브를 프로그래밍 관련 프로젝트 뿐만 아니라 논문, 대화 그리고 데이터 분석 프로젝트에까지 폭 넓게 사용한다고 합니다. 깃허브를 사용하는 이유에 대해 소개한 짧은 글(원글: http://kbroman.org/github_tutorial/pages/why.html)을 번역해 보았습니다.


왜 깃인가?

프레젠테이션, 코드, 스크립트, 그리고 데이터 분석 프로젝트의 변화를 트랙킹하는 유일한 방법은 버전을 관리하는 것이다. 소비자분석_1.py, 소비자분석_2.py 로 새로운 버전을 저장하며 관리하는 것도 가능하지만, 매 버전 달라진 부분을 일일이 기록하는 것은 어려운 일이다. 깃을 제대로 사용한다면 이러한 변화를 효과적으로 기록할 수 있다.


깃은 공동작업 시에 더 빛을 발한다. 여러 명이 수정한 파일을 합치거나 두 사람이 동시에 한 파일을 수정해야하는 일을 경험한 적이 있는가? 생각만해도 고통스럽다. git merge는 마법 같은 명령어이다.


왜 깃허브인가?

깃허브는 한 마디로 프로그래머들의 페이스북이다. 그곳에 가면 모두 다 만날 수 있다. 다른 사람들이 어떤 일을 하고 있는지 알 수 있고, 더 좋은 제안을 하거나 수정할 수 있다. 진정한 “오픈 소스”이다. 만약 쉽사리 접근할 수 없다면 오픈 소스라고 할 수 없다. 깃허브에서는 모든 코드에 접근할 수 있고, 그 코드가 수정된 역사까지 알 수 있다.


깃허브는 공동 작업을 가능케한다. 다른 사람의 코드에 더 나은 제안을 할 수 있다. 오픈 소스이기 때문에 가능한 일이다. 가장 고통스러운 과정 중에 하나인 서버 셋팅도 따로할 필요도 없다. 깃허브 셋팅은 상상초월로 쉽다. (깃허브가 무엇인지, 왜 배워야하는지 이 영상에서 차근차근 설명해드려요. 설치와 사용 방법에 대한 영상도 있어요. ☺)


깃 저장소 살펴보기

아직도 깃과 깃허브 사용에 대한 확인이 서지 않는다면, 깃허브에 올려진 이런저런 흥미있는 프로젝트를 살펴보자. 예를 들면:

Hadley Wickham의 bigvis, ggplot2, lubridate, dplyr

Yihui Xie의 knitr

Ramnath Vaidyanathan의 rCharts, rMaps, slidify

Karl BromanR/qtl

(마르코이미지니어에서는 브런치를 분석한 데이터 분석 프로젝트를 보실 수 있습니다!)


다른 사람들의 깃허브에서 파일과 커밋 내역을 살펴보자. “Commits”탭을 누르고 커밋 내역들을 클릭해서 어떻게 수정되었는지 알아보자.



이미지니어는 문과 출신 개발자가 직장인을 대상으로 하는 6주 과정의 온라인 코딩 교육입니다. 인문학도 출신, 종합상사 해외영업을 하던 평범한 대한민국 직장인이 퇴사하고 처음 배운 코딩 기술로 어느덧 4년 차 개발자가 되었습니다. 국내 스타트업, 프리랜서, 디지털 노마드를 거쳐 현재는 싱가포르에서 금융권 개발자로 일하고 있습니다. 처음 프로그래밍을 배우던 그때 그 시절 막막함이 여전히 생생합니다. 100여 개의 온라인 강의를 들으며 익힌 가장 효과적인 개발 공부 방법을 문과생의 언어로 알려드릴게요. 결코 쉽지 않은 길이지만, 끝까지 따라오시면 내 손으로 서비스를 만드는 진짜 ‘개발자’가 되어있는 자신을 발견하실 거예요.


개인 프로젝트 만들며 재밌게 웹, 안드로이드, 아이폰 개발 강의를 수강하시려면,

이미지니어: https://www.imagineer.io/

강사 마르코의 더 많은 이야기를 보시려면,

브런치: https://brunch.co.kr/@imagineer

페이스북: https://www.facebook.com/imagineer.io/

브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari