Git - HEAD , 잘 사용하기

Chooooo·2023년 1월 23일
0

Git

목록 보기
11/15
post-thumbnail

인프런 - 제대로 파는 Git & Github - by 얄코


Git의 HEAD
현재 속한 브랜치의 가장 최신 커밋

  • git switch로 브랜치 옮겨가며 최신 커밋 확인해보자

🎃 checkout으로 앞뒤 이동해보기

checkout 명령어로는 파일들의 상태만 뒤로 돌아가는 명령어이다. (시간선은 reset이나 revert처럼 건들지 않아 !)

git checkout HEAD^

  • ^ 또는~ : 갯수만큼 이전으로 이동
    (ex. git checkout HEAD^^^ , git checkout HEAD~5) 3단계, 5단계 HEAD기준으로 이전으로 돌아간다.

git checkout - : 이동을 한 단계 되돌리기

⭐️ 커밋 해시를 사용해서도 이동 가능

  • git checkout (커밋해시)

💡 이전으로 checkout된 상태에서 소스트리로 HEAD 상태 보기

  • 익명의 브랜치에 위치함을 알 수 있음 → 우측에 해시코드만 뜬다. 이 상태에서 브랜치를 만들고 커밋해보면 새로운 줄기가 뻗어나온다.

checkout으로 이전으로 돌아간 뒤

  • 기존 브랜치로 돌아오기: git switch (브랜치명)
  • 새 브랜치 만들어보기
  • 새 커밋 만들어보기 (새로운 가지 만들 수 있어)

HEAD 사용하여 reset 하기

git reset HEAD(원하는 단계) 옵션

ex git reset --hard HEAD~2 : HEAD로부터 2단계가 사라진다. 그리고 해당 커밋이 최신이 된다.

fetch vs pull

fetch와 pull의 차이

fetch : 원격 저장소의 최신 커밋을 로컬로 가져오기만 한다.
pull : 원격 저장소의 최신 커밋을 로컬로 가져와 merge 또는 rebase한다. (fetch과정 포함)

fetch한 내역 적용 전 살펴보기

  1. 원격의 main 브랜치에 커밋 추가
  • git checkout origin/main으로 확인해보기
  1. 원격의 변경사항 fetch
  • git checkout origin/main으로 확인해보기
  • pull로 적용

일단은 다운받지 않고 확인만 하고 싶으면 checkout 명령어를 통해 해당 내용을 가서 확인하자.

Help와 문서 활용하기

git help

  • Git 사용 중 모르는 부분이 있을 때 도움을 받을 수 있는 기능
  • 이런 기능이 있다 정도로 넘기기

(사실 모르는건 구글링이 가장 빠르지...)

git config

이 내용은 깃의 여러가지 세팅들을 하는 기능 !

global 설정과 local 설정

❤ config를 --global과 함께 지정하면 전역으로 설정된다.

  • --global 생략 시 특정 프로젝트 만의 user.name, user.email을 지정할 수 있게 된다.

설정값 확인

git config (--global) --list : 현재 프로젝트의 config로 설정된 값들을 보여준다.

❤ 유용한 설정들

git config --global core.autocrlf (윈도우: true / 맥: input)

  • 나는 윈도우이기 때문에 git config --global core.autocrlf true를 입력하면 돼

🧡 pull 기본 전략 merge 또는 rebase로 설정
git config pull.rebase false → merge로 실행
git config pull.rebase true → rebase로 실행

git config --global init.defalutBrach main : 기본 브랜치명 설정

git config --global push.default current : push시 로컬과 동일한 브랜치명으로 지정 (원래 -u를 붙여서 원하는 이름 설정했었잖아)

profile
back-end, 지속 성장 가능한 개발자를 향하여

0개의 댓글