Git (1)

Myeongsu Moon·2024년 11월 18일

제로베이스

목록 보기
25/95
post-thumbnail

Chapter1 Version Control System

  • 형상 관리 시스템(Configuration Management Systems)

  • 버전 관리 시스템(Version Control System)

  • Source Data + History

  • 협업, 작업 추적, 복구 등이 가능

  • Local Version Control Systems
    -> 내 컴퓨터에서 버전관리가 가능하지만 내 컴퓨터 하드가 날라가면 전체 코드가 사라짐
    -> 버전은 관리되지만, 협업이 어려움

  • Centralized Version Control Systems

-> 협업이 가능해짐
-> commit 하는 순간 배포되어 다수에게 버그 유발 가능 (서버로 바로 Commit)
-> 인터넷이 안되면 작업이 불가능
-> 자신만의 version history 를 가질 수 없음

  • Distributed Version Control Systems

-> Commit 하더라도 개인저장소 내에 적용됨
-> 원하는 순간에 배포(Push) 가능
-> 오프라인에서도 작업 가능
-> 자신만의 version history 를 가짐

  • Centralized VCS(중앙 관리): CVS, SVN ...
  • Distributed VCS(분산 관리): Mercurial, Git ...
  • CVS (Concurrent Versions System)
    -> 1980년대 만들어진 형상관리툴
    -> Commit 중 오류 발생 시 Rollback이 되지 않는 등의 문제 발생
    -> SVN으로 대체됨

  • SVN (Subversion)
    -> 2000년대에 만들어졌고 현재까지 두루 사용됨

  • Git (Global Information Tracker)
    -> 요즘 대부분 사용

Chapter 2 Git의 버전관리

  • 버전 관리 시스템의 데이터 저장 방식
    -> 파일의 Diff를 시간순으로 관리

-> 파일의 원본이 아닌 Diff를 가지고 있었기에 특정 파일을 찾기 위해 긴 시간이 필요함

  • Git의 데이터 저장 방식
    -> 파일을 저장하는 순간의 스냅샷을 저장, 변경사항이 없는 경우, 파일을 새로 저장하지 않음

  • Git의 구성 요소
    -> Working Directory
    -> Staging Area
    -> .git Directory

  • Git에서 파일의 상태
    -> Untracked(git에 아무 파일도 없을때) / Tracked
    -> Staged, Committed (Unmodified), Modified

  • Git의 작업 순서
    -> Working Directory 에서 파일을 수정
    -> Staging Area (Index) 에 파일을 Staged 하여 Commit 할 스냅샷을 만듬
    -> Staging Area (Index) 에 있는 파일들을 Commit 하여 .git Directory (Repository) 에 스냅샷을 저장

Chapter3 Github 가입

  • Github: Git을 호스팅해주는 웹 서비스, 협업을 위한 기능을 제공
  • Gitlab: 설치형 버전 관리 시스템, 클라우드 버전 관리 시스템 제공

Chapter4 Installing Git

Chapter5 Git 설정

Git 설정 범위

  • system config: 시스템의 모든 사용자와 모든 저장소에 적용

  • global config: 시스템의 특정 사용자에게 적용

  • local config: 특정 저장소에 적용

  • User Name & Email

  • CRLF(End of Line): 줄바꿈 문자를 말함
    -> Windows에서는 CR(\r) + LF (\n) 모두 사용
    -> 서로 다른 OS에서 함께 Git으로 작업한다면 core.autocrlf = true 사용(파일에 적용된 줄바꿈 문자를 CRLF에서 LF로 변경)

  • Editor

  • Defalult Branch

  • Git 전체 설정 확인

  • Git 범위별 설정 확인

  • Git 항목별 설정 확인

Chapter6 Git Repository

Git Repository 기본 문법

  • Git 저장소

  • Repository는 Git으로 관리하는 프로젝트 저장소로 파일과 디렉토리가 포함될 수 있고, 버전관리를 시작할 수 있음

  • Local Repository: 사용자의 컴퓨터 저장소

  • Remote Repository: 원격서버의 저장소

  • Git 저장소 생성
    -> Git init: 아직 버전관리를 하지 않는 프로젝트 폴더를 Git 저장소로 만듬 (폴더 안에서 해야 됨)

-> Git Clone: Remote 저장소를 Local에 복사하여 사용 가능

  • Remote Repository URL(깃허브 규칙)

  • Git Clone

  • Git Clone with Token (token값과 setting 값을 참고하여 인증을 자동으로 처리해줌)

이 글은 제로베이스 데이터 취업 스쿨의 강의 자료 일부를 발췌하여 작성되었습니다

0개의 댓글