깃허브(GitHub)는 분산 버전 관리 툴인 깃 저장소 호스팅을 지원하는 웹 서비스이다. 루비 온 레일스로 작성되었다. GitHub는 영리적인 서비스와 오픈소스를 위한 무상 서비스를 모두 제공한다. 2009년의 Git 사용자 조사에 따르면 GitHub는 가장 인기있는 Git 저장소 호스팅 서비스이다. 또한 2011년의 조사에서는 가장 인기있는 오픈 소스 코드 저장소 호스팅 서비스로 꼽혔다.
깃이 텍스트 명령어 입력 방식인데 반해, 깃허브는 그래픽 유저 인터페이스(GUI)를 제공한다. 깃허브는페이스트빈(pastebin)과 유사한 서비스인 Gist와 위키를 각 저장소마다 운영하고 있으며, 깃 저장소를 통해 고칠 수 있다
깃허브 용어
로컬 저장소
-파일이나 디렉토리를 저장하고 있는 장소. 내 컴퓨터에 있는 저장소
원격 저장소
-서버나 네트워크에 있는 저장소. Github는 기본적으로 로컬 저장소에서 작업을 하고 그 결과를 원격 저장소에 저장하는 방식
인덱스 저장소
-로컬 저장소에서 작업 후 원격 저장소에 저장하기 전에 임시로 저장이 되는 저장소
Init
-소스코드 파일을 Git으로 관리하기 위하여 Git 저장소를초기화 하는 명령어
Clone
-Giithub상 오픈소스 혹시 이미 만들어져 있는 원격 저장소의 파일을 복제해와서 사용하는 명령어
Add
-Commit 할 준비가 끝난 파일을 인덱스 저장소에 저장하는 명령어
Commit
-소스코드의 업데이트를 확정하는 의미로 확정된 코드와 커밋 메시지를 함께 로컬 저장소에 반영한다. 아직 원격 저장소에는 반영되지 않는다.
Pull
-원격 저장소의 내용을 로컬 저장소에 반영하는 것(가장 최신의 버전으로 업데이트)
Push
-Commit을 원격 저장소에 반영하는 것. 로컬 저장소에서 원격 저장소로 업로드
Branch
-독립적으로 개발하는 것을 의미. 원격 저장소의 코드를 통째로 복사하여 기존의 코드와 상관없이 독립적으로 개발 진행이 가능.