Post

깃 명령어 정리

깃 명령어 정리

Git 커밋 메시지

타입 이름내용
feat새로운 기능에 대한 커밋
fix버그 수정에 대한 커밋
build빌드 관련 파일 수정 / 모듈 설치 또는 삭제에 대한 커밋
chore그 외 자잘한 수정에 대한 커밋
cici 관련 설정 수정에 대한 커밋
docs문서 수정에 대한 커밋
style코드 스타일 혹은 포맷 등에 관한 커밋
refactor코드 리팩토링에 대한 커밋
test테스트 코드 수정에 대한 커밋
perf성능 개선에 대한 커밋

Git 명령어 정리

깃은 많은 명령어로 이루어져 있는데, 일상적으로 자주 쓰는 명령어들을 정리해볼게요.

git init: 새로운 깃 저장소를 생성해요. git clone : 원격 저장소를 복제해요. git add <파일>: 변경된 파일을 스테이지에 추가해요. git commit -m "메시지": 스테이지에 있는 파일을 커밋해요. git push: 로컬 저장소의 커밋을 원격 저장소로 푸시해요. git pull: 원격 저장소의 변경 사항을 로컬로 가져와요. git branch: 현재 브랜치 목록을 확인해요. git checkout <브랜치명>: 다른 브랜치로 전환해요. git merge <브랜치명>: 현재 브랜치에 다른 브랜치의 변경 사항을 병합해요. 자주 사용하는 명령어들이니, 잘 기억해두면 많은 도움이 될 거예요.

Git LFS(Large File Storage) 사용법

Git LFS는 대용량 파일을 Git 저장소에 효율적으로 저장하는 방법입니다.

  1. Git LFS를 설치합니다.
  2. git lfs install 명령어를 실행하여 Git LFS를 초기화합니다.
  3. git lfs track "*.psd" 명령어를 실행하여 트래킹할 파일 패턴을 지정합니다. (“.psd” 대신 다른 확장자를 사용할 수 있습니다.)
  4. git add .gitattributes 명령어를 실행하여 .gitattributes 파일을 스테이징합니다.
  5. git add [file], git commit -m "[message]", git push 명령어를 실행하여 대용량 파일을 커밋하고 푸시합니다.

Git LFS의 추가적인 기능들

Git LFS를 사용하면 대용량 파일을 효율적으로 관리할 수 있습니다. 다음은 Git LFS의 추가적인 기능들입니다:

  • git lfs ls-files: Git LFS에 트래킹되는 파일들을 확인합니다.
  • git lfs untrack [file]: 파일의 Git LFS 트래킹을 해제합니다.
  • git lfs prune: 더 이상 필요하지 않은 Git LFS 파일을 로컬 저장소에서 제거합니다.

이외에도 많은 Git LFS 명령어가 있으니 참고해주세요.

깃 관련 용어

타입내용
publish 로컬 저장소를 원격 저장소에 최초로 등록
commit 변경 사항을 로컬 저장소에 기록
push 로컬 저장소를 원격 저장소에 업로드
fetch 원격 저장소와 로컬 저장소를 동기화 (merge x)
pull fetch + merge를 한 번에 수행
merge 브랜치를 하나로 합치는 것 (병합)
clone 원격 저장소를 로컬 저장소로 복사
LFS Large File Storage
Git LFS 대용량 파일을 효율적으로 다루도록 설정하는 기능
branch 프로젝트의 소스 코드나 파일을 변경할 때, 작업하는 개별공간
merge 브랜치를 하나로 합치는 것 (병합)
conflict 서로 다른 브랜치 사이에서 변경된 내용이 서로 충돌하는 상황
분기 작업, branch를 나누는 것
stash 작업 중인 변경 내용을 일시적으로 저장 (감추기)
pull request 브랜치에서 변경한 내용을 main에 merge하기 전에 검토를 요청하는 기능
branch protection rule 버전 관리 시스템의 품질을 유지하기 위한 정책
checkout 브랜치를 변경하거나, 특정 커밋으로 프로젝트(버전)를 이동하는 것
commit hash Git이 커밋을 고유하게 식별하기 위해 만드는 임의의 문자열
SHA Secure Hash Algorithm, 주어진 데이터를 고유한 값으로 매핑하는 알고리즘, commit hash에서 사용
reorder 커밋의 순서를 변경하는 것 (로그 정리, 커밋 그룹화)
amend 로컬 저장소에서 최근 커밋 메시지를 수정
undo 로컬 저장소에서 이전에 한 작업을 취소
revert 새로운 커밋을 만들어서 이전 커밋을 취소
reset 특정 커밋으로 이동해, 해당 커밋의 상태로 완전히 초기화
squash 여러 개의 연속된 commit을 하나의 commit으로 합치는 것
force 변경 사항을 원격 저장소에 강제로 밀어넣는 명령어
This post is licensed under CC BY 4.0 by the author.