본문 바로가기

Team Thoth/오픈소스

GIT과 Github 안내

개인적으로 진행하는 오픈소스에서 Github를 이용하기로 하여, Github 사용법을 조사하여 포스팅 합니다.

순서는 아래와 같이 순서로 진행하겠습니다.


새로 시작하시는 분들에게 참고가 됐으면 하네요.

우선 기본적인 개념을 정리해 볼게요.

Git이란?

공식사이트 : http://git-scm.com/

 리누스 토발즈가 linux kernel 소스 관리를 위해 만든 소스 버전 관리 프로그램입니다.

 Git은 속도에 중점을 둔 분산형 버전관리 시스템(DVCS)이며, 대형 프로젝트에서 효과적이고 실제로 유용합니다.

 Git은 SVN과 다르게 commit은 로컬 저장소에서 이루어 지고 push라는 동작으로 원격 저장소에 반영됩니다.(로컬 저장소에서 작업이 이루어져 매우 빠른 응답을 받을 수 있습니다.)
 또한 받을때도 pull 또는 fetch로 서버에서 변경된 내역을 받아 올 수 있다.


공식 사이트에 나온 Git의 특징은 아래와 같습니다.


1, Distributed development  

 전체 개발 이력을 각 개발자의 로컬로 복사본을 제공하고 변경된 이력을 다시 하나의 저장소로 복사한다.

 이러한 변경은 추가개발지점을 가져와, 로컬개발 지점과 동일하게 병합(merge)할 수 있다.저장소는 Git protocol 및 HTTP로 쉽고 효율적(특별한 웹서버 구성없이)으로 접근할 수 있다.


2. Strong support for non-linear development

 신속하고 편리항 branch 및 merge 지원, 비선형(여러갈래) 개발 이력을 시각화하고 탐색 할 수 있는 강력한 도구를 제공한다.

  
3. Efficient handling of large projects

 Git은 매우 빠르고, 대형프로젝트나 이력이 많은 작업에 매우 합리적이다. Git은 대부분의 다른 버전관리시스템보다 빠르게 요청한다. 그리고 일부 작업에서는 더 빠르게 진행한다.
 또한, 최근의 정상급 오픈소스 버전관리 시스템보다 장기간의 수정내역을 매우 효율적인 압축방법을 사용한다.


4. Cryptographic authentication of history

 GIt의 이력은  성공한 개발이력의 commit에 의해 개정명으로 저장된다. 일단 그것이 배포되면, 그것을 모르고 예전버전으로 변경하는것은 불가능하다. 또한, 그것들을 암호화 할수 있다.

  

5. Toolkit design

 UNIX의 전통에 따라, GIT은 C로 작성된 많은 소규모 도구모음이다, 그리고 많은 스크립트들이 기능 보강을 제공한다. Git은 새로운 기발한 작업을 위한 손쉬운 사용과 쉬운 스크립팅을 위한 도구를 제공한다.

원문 - http://git-scm.com/about/


Github란?

공식사이트 : http://github.com/ 


 소셜코딩을 모토로 다른 사람들과의 협업할 수 있는 제일 좋은 방법이라 소개하네요. 
 이미 세계적으로는 큰 인기 몰이 중이나 우리나라에서는 아직 많이 알려지지 않았습니다. twitter, facebook, rackspace, digg, Yahoo, shopify, EMI, siz apart 등 쟁쟁한 업체들이 이미 github를 사용하고 있습니다.
 Github는 공개용 저장소(무료)와 개인저장소(유료)로 사용가능하며, 공개용 저장소의 경우 Github 사이트에 노출이 되어 다른 사람들과 쉽게 공유 할 수 있습니다. 

 Github는 본인인증을 위해 SSH Key를 사용하여 개인을 인증합니다. 사용방법은 다음장에서 설명하겠습니다.

 더 자세한 정보는 홈페이지를 통해서 확인 해주세요.


Github 가입 및 저장소 생성

github 홈페이지에 방문하여 "Plans, Pricing and Signup" 메뉴를 선택하여 가입합니다

무료 계정 생성 버튼을 이용하여 회원가입 하세요.

로그인 후 저장소를 생성합니다. 

Project Name이 저장소 명이 됩니다. 


우선은 저장소까지만 만들고 프로그램 설치 후 연동 해 보겠습니다.

프로그램 설치 등은 다음 글을 참고해 주세요.

관련글