의견.png

"깃허브"의 두 판 사이의 차이

위키원
이동: 둘러보기, 검색
(개요)
8번째 줄: 8번째 줄:
 
깃허브는 가장 인기있는 깃(Git) 호스팅 사이트이다. 깃허브의 프로젝트는 표준 깃 명령줄 인터페이스를 사용하여 접근하고 조작할 수 있으며 모든 표준 깃 명령어들이 이 인터페이스와 함께 구동된다. 깃허브는 또한 등록 사용자와 비등록 사용자 모두에게 사이트의 공개 저장소를 찾아볼 수 있는 권한을 제공하며 여러 데스크톱 클라이언트와 깃 플러그인 또한 깃허브 그리고 플랫폼을 연동하는 다른 서드파티에 의해 개발되고 있다. 깃허브를 구동하는 소프트웨어는 루비 온 레일즈와 얼랭을 사용하여 깃허브 개발자들인 '''완스트래스'''(Wanstrath),'''하이엣'''(Hyett), '''프레스턴-워너'''(Preston-Werner)에 의해 개발되었다.<ref name="위키백과">〈[https://ko.wikipedia.org/wiki/%EA%B9%83%ED%97%88%EB%B8%8C 깃허브]〉, 《위키백과》</ref>
 
깃허브는 가장 인기있는 깃(Git) 호스팅 사이트이다. 깃허브의 프로젝트는 표준 깃 명령줄 인터페이스를 사용하여 접근하고 조작할 수 있으며 모든 표준 깃 명령어들이 이 인터페이스와 함께 구동된다. 깃허브는 또한 등록 사용자와 비등록 사용자 모두에게 사이트의 공개 저장소를 찾아볼 수 있는 권한을 제공하며 여러 데스크톱 클라이언트와 깃 플러그인 또한 깃허브 그리고 플랫폼을 연동하는 다른 서드파티에 의해 개발되고 있다. 깃허브를 구동하는 소프트웨어는 루비 온 레일즈와 얼랭을 사용하여 깃허브 개발자들인 '''완스트래스'''(Wanstrath),'''하이엣'''(Hyett), '''프레스턴-워너'''(Preston-Werner)에 의해 개발되었다.<ref name="위키백과">〈[https://ko.wikipedia.org/wiki/%EA%B9%83%ED%97%88%EB%B8%8C 깃허브]〉, 《위키백과》</ref>
  
 +
== 특징 ==
 +
=== 깃과 깃허브 ===
 +
깃(Git)과 깃허브(Github)를 구별해야 한다. 스코드를 효육적으로 관리할 수 있게 해주는 형상관리도구 인 깃(Git)은 분산 소스 버전 관리 시스템이며 서버를 분산시켜 구축할 수 있게 하는 소프트웨어이다. 개발자들의 버전 제어 및 공동 작업을 위한 플랫폼 인 깃허브(GitHub)는 깃을 사용하는 프로젝트를 지원하는 웹호스팅 서비스를 제공하고 깃을 업로드 할 수 있는 웹사이트이다.<ref name="에이콘아카데미">에이콘아카데미, 〈[https://acornedu.blog.me/221522579114 깃(Git)과 깃허브(GitHub) 궁금하시죠?]〉, 《네이버 블로그》, 2019-04-25</ref>
 +
 +
=== 버전관리 ===
 +
버전관리는 개발자간의 협업에 필요하다. 전체 개발 소스를 공유하면서 개발 파트를 나눌 수 있고 같은 모듈을 개발하더라도 소스를 서로 공유하며 개발할 수 있다. 버전관리 시 소스 하나 또는 묶음을 하나의 버전으로 간주한다. 파일이나 폴더를 추가, 수정, 사젝하며 사람이 직접 관리를 한다. 원할 때 예전 버전 내용 전체를 되돌려 볼 수 있으며 복잡한 코드를 개발할 때 이전 버전과 비교하기 편하다. 버전관리 활용의 장점은 개발 협영의 용이하다는 것이다. 또한 이력 관리가 개별적으로 가능하고 관리 내용을 오픈소스로 공유 할 수 있다는 장점을 가지고 있다.<ref name="에이콘아카데미"></ref>
 +
 +
=== 형상과 버전관리 도구 ===
 +
* '''동시 버전 관리 시스템''' : 동시 버전 관리 시스템(CVS; Concurrent Versions System)은 프로젝트 전체가 아닌 각각 파일 관리가 가능하다. 현재는 한계를 맞아 새롭게 서브버전이 개발되었다.
 +
* '''SVN''' : SVN(Subversion)은 동시 버전 관리 시스템을 대체하는 버전 관리 시스템으로 형상관리 쪽에서는 깃만큼이나 굉장히 많이 쓰이는 툴이다. 현재 아파치 최상위 프로젝트로 세계 여러나라 개발자 커뮤니티와 함께 지속적으로 개발되고 있다.
 +
* '''머큐리얼''' : 머큐리얼(Mercurial)은 파이썬과 일부 C언어로 개발된 '''크로스 플랫폼 분산 버전 관리 툴'''이다. 기본적으로 명령 줄 인터페이스 프로그램으로 모든 명령이 hg로 시작한다.<ref name="에이콘아카데미"></ref>
 +
 +
=== 주요 개념 ===
 +
* '''병합''' : 병합(Merge)은 한 브랜치(Branch)에서 완성한 작업을 다른 브랜치에 병합한다.
 +
* '''태그''' : 태그(tag)는 특정 이력을 가지는 커밋(commit)에 대한 참조이다.
 +
* '''풀 리퀘스트''' : 풀 리퀘스트(Pull request)는 완료한 작업을 다른 사람이 리뷰하고 병합하도록 요청하는 작업이다.
 +
* '''이슈''' : 이슈(issue)는 기능에 대한 논의, 버그 추적하는 것을 의미한다.
 +
* '''위키''' : 위키(wiki)는 링크들을 연결해 웹페이지 생성
 +
* '''푸시''' : 푸시(Push)는 내 컴퓨터 로컬에 저장되어 있던 버전 정보를 서버에 올리는 작업이다.
 +
* '''풀''' : 풀(Pull)는 깃 저장소 서버로부터 내 컴퓨터 로컬로 버전 정보 전체를 가져오는 작업이다.<ref name="에이콘아카데미"></ref>
 +
 +
=== 깃허브의 장점 ===
 +
깃허브는 소스코드 다시보기, 문서자료의 분류정리, 커뮤니티 관리, 코드 호스티, 프로젝트 관리 및 통합에 사용된다. 이러한 깃허브의 장점은 다음과 같다.
 +
1. 월정액으로 이용시, 비공개 사설 저장소를 제공한다.
 +
 +
2.좋은 웹 [[UI]]를 제공한다.
 +
 +
3.[[위키]](Wiki)를 제공한다.
 +
 +
4.이슈 페이지를 제공한다.<ref name="에이콘아카데미"></ref> 
 +
 
{{각주}}
 
{{각주}}
  
13번째 줄: 44번째 줄:
 
* 〈[https://ko.wikipedia.org/wiki/%EA%B9%83%ED%97%88%EB%B8%8C 깃허브]〉, 《위키백과》
 
* 〈[https://ko.wikipedia.org/wiki/%EA%B9%83%ED%97%88%EB%B8%8C 깃허브]〉, 《위키백과》
 
* lsgl, 〈[https://m.blog.naver.com/PostView.nhn?blogId=ufo7142&logNo=220628116787&proxyReferer=https%3A%2F%2Fwww.google.com%2F github란? - github 소개 및 설치]〉, 《네이버 블로그》, 2016-02-15
 
* lsgl, 〈[https://m.blog.naver.com/PostView.nhn?blogId=ufo7142&logNo=220628116787&proxyReferer=https%3A%2F%2Fwww.google.com%2F github란? - github 소개 및 설치]〉, 《네이버 블로그》, 2016-02-15
 +
* 에이콘아카데미, 〈[https://acornedu.blog.me/221522579114 깃(Git)과 깃허브(GitHub) 궁금하시죠?]〉, 《네이버 블로그》, 2019-04-25
  
 
== 같이 보기 ==
 
== 같이 보기 ==

2019년 5월 3일 (금) 10:17 판

깃허브(GitHub)는 소프트웨어 분산 버전 관리(DVC) 툴인 (Git)을 사용하는 프로젝트를 지원하기 위한 웹호스팅 서비스이다. 깃(Git)이 텍스트 명령어 입력 방식인데 반해, 깃허브는 화려한 그래픽 사용자 인터페이스(GUI)를 제공한다.

깃허브는 전 세계 최대 규모의 오픈소스 공유 사이트 겸 개발자 커뮤니티로 성장했다. 루비(Ruby) 언어를 사용하여 개발했다.

2016년 5월 서울특별시는 행정정보 공공데이터 목록 500만건을 깃허브 사이트에 공유했다. 깃허브의 마스코트는 고양이 머리에 문어 다리가 달린 옥토캣(Octocat)이다.

개요

깃허브는 가장 인기있는 깃(Git) 호스팅 사이트이다. 깃허브의 프로젝트는 표준 깃 명령줄 인터페이스를 사용하여 접근하고 조작할 수 있으며 모든 표준 깃 명령어들이 이 인터페이스와 함께 구동된다. 깃허브는 또한 등록 사용자와 비등록 사용자 모두에게 사이트의 공개 저장소를 찾아볼 수 있는 권한을 제공하며 여러 데스크톱 클라이언트와 깃 플러그인 또한 깃허브 그리고 플랫폼을 연동하는 다른 서드파티에 의해 개발되고 있다. 깃허브를 구동하는 소프트웨어는 루비 온 레일즈와 얼랭을 사용하여 깃허브 개발자들인 완스트래스(Wanstrath),하이엣(Hyett), 프레스턴-워너(Preston-Werner)에 의해 개발되었다.[1]

특징

깃과 깃허브

깃(Git)과 깃허브(Github)를 구별해야 한다. 스코드를 효육적으로 관리할 수 있게 해주는 형상관리도구 인 깃(Git)은 분산 소스 버전 관리 시스템이며 서버를 분산시켜 구축할 수 있게 하는 소프트웨어이다. 개발자들의 버전 제어 및 공동 작업을 위한 플랫폼 인 깃허브(GitHub)는 깃을 사용하는 프로젝트를 지원하는 웹호스팅 서비스를 제공하고 깃을 업로드 할 수 있는 웹사이트이다.[2]

버전관리

버전관리는 개발자간의 협업에 필요하다. 전체 개발 소스를 공유하면서 개발 파트를 나눌 수 있고 같은 모듈을 개발하더라도 소스를 서로 공유하며 개발할 수 있다. 버전관리 시 소스 하나 또는 묶음을 하나의 버전으로 간주한다. 파일이나 폴더를 추가, 수정, 사젝하며 사람이 직접 관리를 한다. 원할 때 예전 버전 내용 전체를 되돌려 볼 수 있으며 복잡한 코드를 개발할 때 이전 버전과 비교하기 편하다. 버전관리 활용의 장점은 개발 협영의 용이하다는 것이다. 또한 이력 관리가 개별적으로 가능하고 관리 내용을 오픈소스로 공유 할 수 있다는 장점을 가지고 있다.[2]

형상과 버전관리 도구

  • 동시 버전 관리 시스템 : 동시 버전 관리 시스템(CVS; Concurrent Versions System)은 프로젝트 전체가 아닌 각각 파일 관리가 가능하다. 현재는 한계를 맞아 새롭게 서브버전이 개발되었다.
  • SVN : SVN(Subversion)은 동시 버전 관리 시스템을 대체하는 버전 관리 시스템으로 형상관리 쪽에서는 깃만큼이나 굉장히 많이 쓰이는 툴이다. 현재 아파치 최상위 프로젝트로 세계 여러나라 개발자 커뮤니티와 함께 지속적으로 개발되고 있다.
  • 머큐리얼 : 머큐리얼(Mercurial)은 파이썬과 일부 C언어로 개발된 크로스 플랫폼 분산 버전 관리 툴이다. 기본적으로 명령 줄 인터페이스 프로그램으로 모든 명령이 hg로 시작한다.[2]

주요 개념

  • 병합 : 병합(Merge)은 한 브랜치(Branch)에서 완성한 작업을 다른 브랜치에 병합한다.
  • 태그 : 태그(tag)는 특정 이력을 가지는 커밋(commit)에 대한 참조이다.
  • 풀 리퀘스트 : 풀 리퀘스트(Pull request)는 완료한 작업을 다른 사람이 리뷰하고 병합하도록 요청하는 작업이다.
  • 이슈 : 이슈(issue)는 기능에 대한 논의, 버그 추적하는 것을 의미한다.
  • 위키 : 위키(wiki)는 링크들을 연결해 웹페이지 생성
  • 푸시 : 푸시(Push)는 내 컴퓨터 로컬에 저장되어 있던 버전 정보를 서버에 올리는 작업이다.
  •  : 풀(Pull)는 깃 저장소 서버로부터 내 컴퓨터 로컬로 버전 정보 전체를 가져오는 작업이다.[2]

깃허브의 장점

깃허브는 소스코드 다시보기, 문서자료의 분류정리, 커뮤니티 관리, 코드 호스티, 프로젝트 관리 및 통합에 사용된다. 이러한 깃허브의 장점은 다음과 같다. 1. 월정액으로 이용시, 비공개 사설 저장소를 제공한다.

2.좋은 웹 UI를 제공한다.

3.위키(Wiki)를 제공한다.

4.이슈 페이지를 제공한다.[2]

각주

  1. 깃허브〉, 《위키백과》
  2. 2.0 2.1 2.2 2.3 2.4 에이콘아카데미, 〈깃(Git)과 깃허브(GitHub) 궁금하시죠?〉, 《네이버 블로그》, 2019-04-25

참고자료

같이 보기


  의견.png 이 깃허브 문서는 블록체인 솔루션에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.