GNU/리눅스

& GIT

Agenda




 0.     시작하기전에.....
    1. 운영체제
    2. GNU/리눅스
    3. 오픈소스
    4. 버전관리 시스템 &GIT







    1. 운영체제 (OS)



    정의



    그땐 그랬지



    유닉스 시스템의 탄생 1


    고마워요 멀틱스~~


    유닉스 시스템의 탄생 2




    널리 퍼지는 유닉스 시스템

    상업용 유닉스 시스템의 출현






    • BSD 탄생
    • AT&T UNIX 상표권 권리 주장
    • PC OS 이야기

    GNU (Gnu is Not Unix)

     

     GNU 소프트웨어



    • Bison (parser generator)
    • Bash (shell)
    • Emacs (편집기)
    • GCC (컴파일러)
    • GDB (디버깅 프로그램)
    • 김프 ( 그림 편집기)
    • 그놈 (그래픽 데스크톱 환경)
    • GZip (데이터 압축을 위한 라이브러리,프로그램)
    • GNU 오피스

    리눅스의 탄생

    리눅스 활용 분야





    • 임베디드 시스템
    • 슈퍼 컴퓨터
    • 서버
    • 개인용 컴퓨터

    오픈소스


    왜?



    • 황금률
    • 우리는 동지
    • 보다 나은 교육 환경을 제공
    • 자유로움 - 돈으로 바꿀 수 없는 행복
    • 경쟁을 통해 보다 나은 결과를 얻는다
    • 피드백

    2014 4월 MS 개발자 컨퍼런스



    사용자 경험 (UX)

    프로그래머 경험(??)


    패키지 매니져



    • RPM, apt-get, yum (리눅스)
    • MacPort, Homebrew (OS X)
    • nuget (.net)
    • rubygems (ruby)
    • pip (python)
    • NPM (nodeJS)
    • cocoaPods (object-c)
    • Maven (java)
    • bower (web client)

    하수는 겸손해야 한다

    줘도 못 먹나




    버젼관리 시스템 




    • 뭔가 잘못되었을 때 복구
    • 과거 어떤 시점으로 돌아가고 파
    • 팀원들과 공유
    • 소스 코드의 변경 사항 추적
    • 대규모 수정 작업을 안전하게
    • 개발 줄기를 여러개로
    • 합쳐보자 

    로컬 버전 관리 시스템


    중앙집중식 버전 관리 시스템



    분산 버전 관리 시스템





    Git의 탄생



    • 리누스 토발즈
    • 리눅스 커널에 BitKeeper(DVCS) 사용
    • BitKeeper 관계 틀어짐 자체 도구를 만드는 계기가 됨
    • 다음 목표로 설계함
      • 빠른 속도
      • 단순한 구조
      • 비선형적인 개발
      • 완벽한 분산
      • 대형 프로젝트에도 유용할 것(속도,데이터 크기면에서)
    • 2008년 GitHub 서비스와 함께 폭발적으로 성장함

    GitHub



    GitHub 확장 서비스





    • GitHub Hook API, Login API
    • GitHub 호스팅 서비스
    • Travis-ci
    • Trello, Asana
    • 100개 이상의 서비스

    다음 시간





     Git에대해

    http://www.gotomeeting.co.kr/


    감사합니다.
    Made with Slides.com