반원 블로그

01. GitHub이란? 본문

2017/GitHub

01. GitHub이란?

반원_SemiCircle 2017. 2. 15. 18:42

학습 목표 :  Github란 무엇인지 알고, github 서비스의 용도를 알아보자.

■ Github의 정의
- 각각의 개발자들이 진행한 개발의 변경 사항을 온라인에서 확인 가능한 서비스
- 저장소(Repository) : 소스 코드의 변경 사항을 보관하는 장소
- 사례 : spring Framework의 코드 공유(온라인에서 파일 시스템 형식으로 열람가능)

1) 사이트 구성 화면 분석


-README.MD : 해당 프로젝트를 쓰려면 어떻게 해야하는지 기본적인 매뉴얼이 담겨있는 부분
-commits : 해당 프로젝트에 몇개의 commit(버전)이 있는가를 표시한다.
 따라서 commits를 누르면 버전에 따른 작성자 시간과 함께 변경사항 등이 나온다.

2) 저장소로의 GitHub
- 저장소(Repository)라는 것은 지역 저장소원격 저장소로 나뉜다.
- 지역 저장소(Local) : 개별 컴퓨터에서 소스 코드를 수정하여 Commit 후 새로운 버전 생성
- 원격 저장소(Remote) : 프로젝트는 혼자서보단 다인이 함께함, 백업과 협업의 과정이 필요하여 온라인에 중앙 저장소가 필요함
- 지역 저장소와 원격 저장소가 정보를 교환하면서 작업이 이루어지며, GitHub이란 오픈소스 프로젝트들을 위한 원격 저장소를 제공해주는 서비스
- 비공개 원격 저장소가 필요한 경우 GitHub에서 유료로 제공한다.


■ Github서비스 활용

- Watch : 자신이 관심있는 프로젝트의 변경사항을 보고 싶을 때 누른다. 
- Star : 페이스 북의 '좋아요' 기능
- Fork : 해당 프로젝트의 복제가 이루어진다.(옆테이블의 돈까스를 포크로 찍는다!)
 Fork를 하면 이 프로젝트의 멤버가 아니여도 맘대로 지역저장소에 저장하고 수정하여 다시 쓸 수도 있다.(오픈 소스 정책)


 어째서? 힘들게 만든 코드를 오픈해놓는 것일까?
Fork숫자를 보면, 얼마나 이 프로젝트가 가치가 있는가? 등을 나타낸다고 볼 수 있다. 굉장한 상징성을 가지게 된다. 힘들게 만든 프로젝트가 많은 사람들에게 Fork되기를 바라게 된다.

-Pull requests : 해당 프로젝트인 A를 Fork를 해서 수정을 하여 새로운 프로젝트B를 만들었는데, "B가 원래 프로젝트인 A에도 도움이 되겠다" 싶을 때 눌러 요청을 하는 곳.
A제작자가 판단시 승인하면 프로젝트에 추가가 된다.
- Wiki : 프로젝트의 매뉴얼등이 저장되있는 곳
- Pulse: 프로젝트의 변화(관심도 등)
- Graphs : 프로젝트에 대한 데이터를 시각화해서 보여준다.

■요약
- GitHub이란 원격 저장소를 제공하여 전세계 개발자들이 협업을 가능하게하여 오픈소스를 만드는 서비스
- 원격 저장소지역 저장소에서 작업한 내용을 업로드하여 여러 개발자들이 협업할 수 있도록 해주는 중앙 저장소



Comments