[Git] Git과 버전 관리 시스템(Version Control System)

somin·2021년 6월 24일
0

Git

목록 보기
1/3

버전 관리 시스템

  • 이전에 작성한 내용을 보존해 주는 시스템으로 편집 전 상태로 되돌리고 싶을 때 유용하며 Git이 대표적
  • 파일의 변경 이력을 저장할 수 있고 어떤 변경 사항이 발생했는지 알 수 있음
  • 변경 사항 저장 시 어떤 사항이 변경되었는지 코멘트를 작성을 해야 누가 어떤 파일을 추가, 수정, 삭제했는지 확인 가능

Git이란

1. Git

  • Git : 소스 코드 기록을 관리하고 추적할 수 있는 분산형 버전 관리 시스템으로 변경 사항을 하이라이트로 확인 가능
  • 스냅샷 : 특정 시점에 생성된 백업 복사본
  • commit : 변경사항에 대한 스냅샷을 만들어 주는 작업을 수행, 이를 통해 이전 기록들에 대한 추적이 가능
  • Git repository : Git으로 관리되는 폴더

2. Git repository

1) Remote Repository

  • 원격 온라인 서버 상의 저장소로 작업한 코드를 업로드해 공유하는 공간
  • Fork : 다른 사람이 Remote Repository에 올려놓은 소스 코드를 내 Remote Repository Repository로 가져오는 작업
  • Pull : Remote Repository에서 변경 사항이 있을 때 Local Repository 로 가져오는 작업

2) Local Repository

  • 내 컴퓨터의 저장소로 내가 작업을 하는 공간
  • Clone : Remote Repository에 있는 소스 코드를 Local Repository로 가져오는 작업
  • Push : 변경된 내용을 commit을 통해 저장해 준 뒤 Local Repository에 기록해 놓은 commit을 Remote Repository로 업로드

3. Local Repository의 3가지 영역

  • Untracked area는 : Git이 관리하고 있지 않은 영역
  • Tracked area : Unmodified, Modified, Staged
    *Tracked area에 들어온 파일들만 Git의 관리를 받을 수 있음

1) Unmodified

  • 기존에 Commit했던 파일을 수정하지 않은 상태

2) Modified

  • 기존에 Commit했던 파일을 수정한 상태

3) Staged

  • commit이 가능한 상태로 수정한 파일을 commit하기 위해서는 staged area에 add하는 작업이 필요

Github

  • Github : Git Repository를 관리할 수 있는 클라우드 기반 서비스

  • Git으로 버전을 관리하는 폴더에 대해 Github을 통해 여러 사람들이 공유하고 접근할 수 있음

  • Github에서 Code Review 등을 통해 협업이 가능

  • 수많은 프로젝트의 오픈 소스들이 GitHub로부터 호스팅되고 있어서, 누구든 자유롭게 기여 가능
    *오픈 소스 : 소스 코드가 공개된 소프트웨어로 어떤 수정사항이 있는지 commit 기록을 통해서 확인 가능

  • Pull request : 내가 제안한 코드 변경사항에 대해 반영 여부를 요청하는 작업
    *Push를 완료한 후 GitHub를 통해 Pull request

Regerences

1. git reset

profile
✏️

0개의 댓글