[Git&GitHub] git의 기본개념

개발log·2024년 1월 5일
0

Git&GitHub

목록 보기
1/9
post-thumbnail

git

  • 분산형 버전관리 시스템
    원격저장소(GitHub)와 로컬저장소(개인컴퓨터)
    인터넷 연결이 없더라도 작업을 할 수 있다.
  • 원격저장소에 있는 코드를 공유할 수 있다. (효율적인 협업 가능)
  • 파일들의 수정, 삭제, 추가 등에 대한 모든 변경사항이 기록된다.
  • 오픈소스를 보며 코드의 지식을 넓힐 수 있다.

GUI(graphical user interface)

사용자가 편히 사용할 수 있도록 버튼이나 아이콘과 같은 그래픽 기반의 사용환경

CLI(Command-Line Interface)

명령어 기반 사용환경

소스트리(SourceTree)

git을 쉽게 사용할 수 있도록 도와주는 외부 GUI tool(도구)

git의 공간 분리

동작과 이력을 효율적으로 처리하기 위해서 저장공간을 논리적으로 분리
작업공간(working directory/working tree), 임시저장공간(stage), 실질적으로 사용되는 공간(repository)

작업공간(working tree)

작업을 하는 공간(로컬저장소에 접근하여 파일을 생성, 수정, 저장하는 공간)
stage영역과 맞닿아 있다.
작업공간에 새롭게 만들어진 파일들은 최초 모두 untracked 상태이다.
해당 파일들의 수정 사항을 반영하고 싶다면 tracked 상태로 바꾸어 주어야 한다.(관리해달라고 통지)

임시저장공간(stage)

tracked 된 파일들을 관리하는 영역(작업공간과 연결되어 있다.)
tracked 된 파일들의 추적상태를 잠시 복사하여 저장한다.
stage 영역에 저장된 파일들은 모두 tracked 상태가 된다.
최종적인 파일의 변화를 영구적으로 저장하기 위해서는 모든 파일의 상태가 stage상태가 되어야 한다.
stage에 올라가지 않은, 작업공간에 새롭게 만들어진 파일(untracked 파일)도 unstage상태라고 할 수 있다
unstage상태는 stage영역에 있는 파일과 working directory 안의 파일이 서로 차이가 있을 때를 의미한다.

※ 원본과 수정본의 기록을 구분하기 위해 modified와 unmodified로 나누어 관리한다.

commit

영구저장 메세지를 남기는 것(권장사항)

출처 : 직접 수강한 DDAZUA Git&GitHub 강의

profile
나의 개발 저장소

0개의 댓글