Git 교과서

코드 이력, 하나도 놓치지 마라!

버전 관리 시스템의 이해와 설치부터 커밋, 브랜치, 임시 처리, 병합, 복귀, 서브모듈, 태그까지
깃, 소스트리, 깃허브로 실습하며 기본기를 탄탄하게 다진다!

Yes24 교보문고 알라딘 인터파크 길벗

페키지


깃은 오픈소스 개발 생태계, 배포와 매우 밀접한 관계를 가지고 있습니다.
깃은 소스의 버전관리 뿐만 아니라 다양한 언어의 라이브러리를 배포하는 시스템으로 자리를 잡아 가고 있습니다.


라이브러리


깃 호스팅으로 관리는 수많은 저장소는 각자의 고유적인 프로젝트 또는 다른 프로젝트의 일부 라이브러리 입니다.


페키지 메니저


과거의 라이브러리는 분산되어 있는 각자의 웹사이트에 압축파일 형태로 공개가 되었습니다.
하지만 최근들어 다양한 언어들이 코드를 패키지화 하여 자기들 만의 고유한 배포 사이트를 운영하고 있습니다.

PHP는 컴포저, 노드는 NPM, 루비는 gem, 파이썬은 PIP등 이 있습니다.


페키지 저장소


깃의 저장소와 호스팅은 다양한 라이브러리 패키지를 외부에 공개하고 배포를 쉽게 할 수 있는 최적의 환경입니다.
이는 대부분의 패키지 배포 사이트들이 깃과 연동이 되거나, 깃에 의해서 내부관리를 하고 있다는 것입니다.

컴포저의 경우 깃허브나 빗버켓 호스팅 저장소와 연동하여 패키지를 배포합니다.
노드 NPM의 경우에도 내부적 또는 호스팅을 이용하여 배포할 수 있습니다.


컴포저


페키지스트(packagist)는 PHP 라이브러리 저장소 입니다. »composer


NPM


노드 기반으로 작성된 라이브러리 패키지를 관리해 주는 도구 입니다. »npm


PIP


PIP는 파이썬의 페키지 메니저 관리 도구 입니다. »pip


GEM


잼(gem)은 루비 언어의 패키지 관리 도구 입니다. »gem


Nuget


Nuget은 마이크로소프트의 .net 코드의 패키지를 관리하는 도구 입니다. »nuget