Git & Github

CHAN LIM·2022년 7월 5일
0

Git&Github

목록 보기
1/5

Git & Github

  • Git : 소스코드 변경사항을 효율적으로 관리하기 위한 분산형 버전 관리 시스템입니다.
  • Github : Git을 기반으로 하는 데이터 저장소입니다.

Git

1). 기본개념

  • 단순히 마지막 작업내용만을 저장하는 것이 아니라, 이전까지의 작업내용 전부 복제(clone)하는 방식입니다.
  • 따라서 서버에 문제가 생겨도 해당 복제물로 다시 작업이 가능합니다.
  • 기존 델타 기반의 VCS와 달리 GIT은 데이터를 '연속되는 스냅샷'과 같은 개념으로 저장합니다.
  • 시간 순서대로 저장합니다.

2). GIT의 상태

(1) Committed : 데이터가 로컬 데이터베이스에 안전하게 저장됐다는 것

(2) Modified : 수정한 파일을 아직 로컬 데이터베이스에 커밋하지 않은 것

(3) Staged : 현재 수정한 파일을 곧 커밋할 것이라고 표시한 상태

: 보통 파일 및 폴더들은 Working directory 라고 칭하며, 여기에서 파일들을 수정합니다.
: commit을 실행하기 전의 Repository와 Working directory 사이는 Staging area 또는 Index라고 합니다.
: commit의 과정은 모든 수정사항을 Repository에 모두 저장하는 것이 아닌, staging area에 저장합니다.
: 이 staging area에서 필요 여부에 따라 commit합니다.
: staging area에 있는 파일들을 git 에 commit하여 스냅샷으로 저장합니다.

3) Git의 장점

  • 변경사항에 대한 추적 가능하고 편리합니다. (수정, 삭제, 비교, 되돌아가기 등)
  • Github을 통한 공유가 편리합니다.
  • 2인 이상 협업시 개발하기 편리합니다.

용어 정리

1) Commit

: 깃에 데이터가 저장되어 온 기록(파일 추가, 변경 등)을 남기는 행위

- 변경한 시간 순서대로 저장
- 영문과 숫자로 이루어진 40자리 이름으로 각 커밋 구분

2) Repository

: 저장소

2-1) Remote Repository (원격저장소)

: 원격 저장소 서버에서 관리 (for 협업)

2-2) Local Repository (로컬저장소)

: 개인 컴퓨터 서버에 저장 (for 개인)

3) Head

: 현재 커밋한 소스코드

4) Branch

: 코드를 여러개로 복사한 후, 이전의 코드와는 독립적으로 개발하는 것

5) Push

: 로컬 저장소의 수정사항을 원격 저장소에 업로드 하는 행위 

6) Pull

: 원격 저장소에서 로컬 저장소로 다운로드 하는 행위 

7) Work Tree

: 폴더

8) Index

: commit을 실행하기 전의 저장소와 작업 트리에 존재하는 공간으로, 모든 변경사항이 포함된 파일들의 집합.
- 인덱스에 존재하는 파일 중 선택적으로 commit

Reference

Git
이 분 글을 그대로 가져왔습니다.

profile
클라우드, 데이터, DevOps 엔지니어 지향 || 글보단 사진 지향

0개의 댓글