Devlog.
게시일

Git 정리

cover
date
Aug 20, 2022
slug
git-정리
status
Published
tags
Git
summary
Git 명령어 및 내부 동작
type
Post

git

컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 분산 버전 관리 시스템

git 명령어

  • add: 수정한 파일을 staging area에 추가
  • commit: 파일들의 변경 사항과 입력한 commit 메시지를 로컬 저장소(repository)에 반영
  • branch: 브랜치 생성
    • m: 브랜치 이름 바꾸기
    • D: 브랜치 삭제하기
  • checkout: 브랜치 이동
    • b: 생성 및 이동
  • merge: 서로 다른 브랜치를 병합
  • push: 원격 저장소에 변경 사항 반영

Pull Request 과정

  1. Pull Request를 보낼 GitHub 저장소 웹페이지에서 fork 진행
  1. git clone <fork한 저장소 remote URL>
  1. git remote add <alias> <원본 저장소 remote URL>
  1. git checkout -b <branch name>
  1. 작업 진행
  1. git add .
  1. git commit -m <commit message>
  1. git push origin <branch name>
  1. Fork한 GitHub 저장소 웹페이지에서 Compare & pull request 클릭
  1. 내용 작성 후 Create pull request 클릭

git add와 commit할 때 내부 동작

  • git object
    • blob: 파일 내용을 압축하여 저장하는 객체
    • tree: staging area의 정보를 저장하는 객체
    • commit: 커밋 정보를 저장하는 객체
  • git add
    • 기록하고 싶은 파일들의 변경 사항을 staging area에 추가한다.
      • Staging area: 작업 폴더와 저장소 사이에 존재하는 가상의 공간
    • blob 객체를 만들어 저장한다.
  • git commit
    • Staging area에 있는 변경 사항을 로컬 저장소에 반영한다.
    • tree 객체와 commit 객체를 만들어 저장한다.

git 내부 동작 관련 영상

Video preview

Reference

태그