본문 바로가기

Dot ./개인 공부 기록용

[Git] 갑자기 Git의 역사가 궁금해졌다

    Git으로 협업을 하려고 공부하던 도중 이미 대기업에서도 협업 위주로 주로 쓰이고, 모든 개발자들의 하나의 주요 포폴로 자리잡은 이 회사의 역사가 궁금해졌다. Git이 어떻게 이렇게 개발 문화에 뿌리깊게 자리잡게 되었을까 파헤쳐보자.

    Git이란 무엇일까?

    git

    일단 짧게 역사를 보자1

    → 리눅스의 창시자 리누스 토르발스는 약 26년 동안 1만 명이 넘는 소프트웨어 엔지니어들과 함께 오픈 소스 방식으로 리눅스를 개발

    → 그러나! 많은 개발자들은 이러한 작업환경이 매우 불편하고 비효율적이라는 것을 느껴 개발자들이 조금 더 효율적인 작업 환경에서 개발을 할 수 있기를 간절히 원하고 있던 도중 BitKeeper 사용 시작

     

    일단 짧게 역사를 보자2

    → BitKeeper( Linux 초기 분산버전관리) 와 LINUX 이해관계 충돌 (BitKeeper는 무료 배포, 리버스 엔지니어링 문제)

    → 그래서 LINUX 창시자 리누스 토르발스가 GIT을 아래의 핵심 가치 5개와 함께 세상에 나타남.

     

    GIT 핵심 가치

    • 빠른 속도
    • 단순한 구조
    • 비선형적인 개발(수천 개의 동시 다발적인 브랜치)
    • 완벽한 분산
    • Linux 커널 같은 대형 프로젝트에도 유용할 것(속도나 데이터 크기 면에서)

     

    GIT (VCS. 버전관리 시스템)

    말 그대로 여러 파일을 하나의 버전으로 묶어 관리하는 것이다.

    VSC 2가지 모델

    1) 클라이언트-서버 모델(cvs, svn)

    2) 분산 모델(git)

     

    git은 분산모델

      하나의 중앙 서버가 존재하지만 여러 클라이언트들은 각자의 컴퓨터 저장소에 중앙 서버의 전체 사본을 가지고 작업을 하는 것을 의미한다

     

    Git의 장점 중 하나가 자유롭게 코드를 뗏다 붙일 수 있다.

    • 이전 버전으로 되돌리는 것도 자유롭게 할 수 있음.
    • 새로운 기능을 만들 때도 자유롭게 코드를 추가하고 문제가 발생했을 시에는 바로 뺄 수 있음.
    • 언제든지 뒤로 돌아갈 수 있는 든든한 빽이 생겼기에 안심.

     

    ☛ 요약하면, Git은 버전 관리 시스템중 가장 유용한 프로그램이라고 생각하면 된다.그런 Git의 데이터들을 저장하는 서버가 바로 Github이다.(또는 Gitlab)

     

    GitHub

    GitHub is how people build software
    GitHub는 사람들이 소프트웨어를 개발하는 방법입니다

    github

     

    대표적인 무료 Git저장소

    → 2008년에 최초 등장. Git 호스팅 기능 덕분에 GitHub는 자유 소프트웨어의 성지가 됨

     

     호스팅

    • 나의 웹과 고객을 이어주는 경로 만들기!
    • 간단하게 24시간 고속 도로를 빌리는 거라고 생각하면 편함.
    • 트래픽 설정 (하루에 총 몇 대가 다닐 수 있는지 선택하고, 오고가는 차량의 크기 총량을 선택)을 하고 그에 맞춰 가격을 지불하면 됨.
    • 호스팅의 종류로는 웹호스팅, 서버 호스팅 ,클라우드 서버 같은 것들이 있음

     

    원래는 공개 프로젝트만 무료였고 비공개 프로젝트는 결제를 해야 했으나, MS에 인수된 이후 2019년 1월 초부터 비공개 저장소를 무료로 제공하기 시작했다

     

    그 외 Github의 특징은 뭐가 있을까?

    1. 개인 비공개 저장소(Private Repository) 무료 > 2019년 초부터 무료로 전환

    2. 팀 비공개 저장소(Private Repository) 생성 무료, 협업자 무제한  > 2020년 4월부터 무료로 전환

    3. Pull -> Pull Request 형식

    (가격정책 보러가기)