GitHub는 현재 세계 최대의 오픈소스 프로젝트 호스팅 플랫폼입니다. Atom 텍스트 에디터, 구글의 TensorFlow, 페이스북의 React처럼 널리 알려진 GitHub 페이지 사례가 많습니다. 빅데이터, 인공지능(AI), 사물인터넷(IoT) 같은 첨단 프로젝트로 가장 유명하지만, 애니메이션, 이모지, 게임, 간단한 소프트웨어도 쉽게 찾아볼 수 있습니다. 기술적인 면에서는 소프트웨어와 앱을 위한 '토렌트'와 다소 유사하다고 볼 수 있습니다.
GitHub를 막 탐색하기 시작했다면 가파른 학습 곡선에 부딪히게 될 것입니다. 그래서 이번 글에서는 GitHub의 세계로 부드럽게 안내해 드릴 단계별 가이드를 준비했습니다.
1. GitHub 계정 만들기
먼저 GitHub 공식 사이트로 이동해 계정을 생성하세요. 개인용 무료 계정으로 시작할 수 있으며, 무료 계정은 협업자(collaborator)를 3명까지만 추가할 수 있습니다. 무제한 협업자를 지원하는 Professional, Team, Enterprise 에디션도 제공되니 필요에 따라 선택하면 됩니다.

계정 생성 과정에서 GitHub를 어떤 용도로 사용할 계획인지 선택하게 됩니다.

2. 첫 번째 GitHub 저장소(Repository) 만들기
계정이 생성되고 인증이 완료되면 화면 오른쪽 상단의 '+' 버튼을 클릭해 새 저장소를 만들 수 있습니다.

저장소를 공개(public)로 할지 비공개(private)로 할지 선택합니다. 그리고 'Initialize this repository with a README'(README로 저장소 초기화) 체크박스를 잊지 마세요. README는 방문자가 저장소에 접속했을 때 가장 먼저 보게 되는 항목으로, 프로젝트에 대한 설명, 활용 방법, 설치 및 사용 방법을 포함하는 것이 좋습니다.

첫 번째 저장소가 생성되면 저장소 페이지를 확인할 수 있습니다. 이곳이 바로 GitHub에서 당신의 '홈 주소'이며, 'master'(메인) 브랜치라고도 불립니다. 새로운 저장소를 추가하고 싶다면 메인 개발 브랜치와 분리된 새 브랜치(branch)를 만들 수 있습니다.

개발자들은 이러한 브랜치를 활용해 서로 다른 파일 버전을 관리하고, 버그 수정 등 다양한 작업을 진행합니다.

3. PC에 스테이징 환경 구축하기: GitHub Desktop과 Git 설치
GitHub 계정과 첫 번째 저장소가 준비되었다면, 이제 GitHub 파일과 버전 업데이트를 받을 수 있는 스테이징 환경을 내 PC에 구축해야 합니다. 이를 위해 GitHub Desktop을 다운로드해 설치하세요. Windows와 macOS를 모두 지원합니다.

설치 후에는 GitHub 계정으로 로그인해야 합니다. GitHub Desktop은 GitHub 저장소의 다운로드 파일을 가져오는 데 사용되며, 직접 작성한 업데이트를 저장소에 푸시(push)하는 데에도 활용할 수 있습니다(자세한 내용은 뒤에서 다룹니다).

추가로 'Git'이라는 도구도 필요합니다. Git과 GitHub의 차이점은 전자가 버전 관리 시스템(version control system)이고 후자는 클라우드 서비스라는 점입니다. Git은 GitHub와 독립적이므로 내 컴퓨터에서 로컬로 실행할 수 있으며, 명령 터미널에서 각종 애플리케이션을 실행하는 역할을 담당합니다.

Git 설정에는 어느 정도 시간이 걸립니다. 이때 계정 등록에 사용되는 고유 이메일 주소를 미리 적어두면 좋습니다.

Git은 GNU 일반 공중 사용 허가서(GPL)로 배포되며, 설치는 금방 끝납니다.

설치가 완료되면 'Git Bash'를 실행할 수 있습니다. Git Bash는 GitHub 저장소에서 다운로드한 소프트웨어나 애플리케이션을 실행하는 데 사용되는 Git 전용 명령 터미널입니다.

4. 애플리케이션 클론(Clone) 또는 다운로드
애플리케이션을 클론하거나 다운로드하려면 해당 개발자의 GitHub 페이지로 이동하세요. 예를 들어 여기서는 JavaScript로 만든 RPG 게임 페이지를 방문했습니다. ZIP 파일로 다운로드하거나, GitHub Desktop으로 바로 가져올 수 있습니다(3단계 참고). GitHub 웹사이트 홈페이지나 GitHub Desktop에서 원하는 저장소를 자유롭게 검색할 수도 있습니다.

애플리케이션이 GitHub 대시보드로 가져와지면 'Clone' 버튼을 클릭합니다.

이제 애플리케이션이 내 시스템에 클론되기 시작합니다. 잠시 후 GitHub Desktop에서 하나의 저장소로 확인할 수 있습니다.

클론이 끝나면 'Git'을 실행합니다(위 섹션의 설치 단계 참고). GitHub 저장소 페이지에 안내된 지침에 따라 애플리케이션을 다운로드하고 실행하면 됩니다.

이번 예제에서는 간단한 게임을 실행해 보았습니다.

5. GitHub 커뮤니티에 기여하기
GitHub 커뮤니티에 기여하고 싶으신가요? GitHub에서 저장된 변경 사항은 '커밋(commit)'이라고 부릅니다. 'README.md' 파일을 클릭해 변경 사항을 작성하고, 다른 사용자에게 왜 이런 수정을 했는지 설명을 남겨보세요.

마침내 GitHub 커뮤니티의 핵심인 '풀 리퀘스트(pull request)'에 도달했습니다. 코드에 몇 가지 변경을 가한 뒤, 해당 소프트웨어나 애플리케이션의 작성자에게 자신의 GitHub 저장소로 변경 사항을 'pull'해 달라고 요청하는 것입니다. 여기서는 Maven 파일을 추가해 보았습니다.

GitHub Desktop에서도 손쉽게 풀 리퀘스트를 보낼 수 있습니다.

마무리
GitHub 저장소는 오늘날 인터넷이 보유한 가장 놀라운 보물창고 중 하나입니다. 빅데이터부터 IoT, 산업용 애플리케이션, 재미있는 게임까지 모든 것이 담겨 있습니다. 이 가이드를 따라 하셨다면, 이제 바로 다양한 오픈소스 프로젝트를 탐험하고 직접 기여하는 즐거움을 느껴보실 수 있을 것입니다.