FISA

GIT - 1

임지혁코딩 2024. 7. 8. 17:23

GIT

변경 관리, 공통적인 내용 중복, 불필요한 파일 낭비 해결을 위해

만약에 잠수함 패치를 걸면? - ppt로 하면 이 잠수함 패치를 확인하기도 힘듬. (맨날 들어가야댐)

이러한 관리를. 몇 번째 버전이 뭘 했는지 → 버전 관리로 관리하자.

버전 관리 - 타인과 공유하는 방법?

  • 직접 상대방 B와 A가 직접 GIT PROTOCOL 등으로 통신하는 방법도 있다
  • SAAS (GITHUB 등)
  • GITHUB가 BACKUP을 활용하는 방식. → LOCAL에 버전을 담아둔다.

GITHUB CLI vs GUI(마우스)

CLI : 잘 안바뀜 BUT 어려움. GUI : 레이아웃 위치 변경 가능.

명령어 (복습 위주)

init → 사실. git/이라는 숨김 폴더를 만들어주는 것이었다.

main branch? → 기본 세팅 (master 아닌 거 헷갈리지 말자)

status → 상태 확인.

add → 추적에 추가한다. (. or 파일명) 최초 생성시에는, 기존 추적 파일의 변경사항을 스테이징 영역에 추가.

(즉, commit 하기 이전 마다 올려준다)

commit → 생성도 작업 로그 중 하나

restore → 다시 stage 영역에서 내리기

checkout은 branch 간 이동 뿐만 아니라 특정 커밋 시점으로의 이동도 가능.

 

(이게 그 작업 해시코드)

log들 한번에 확인하기에는, git log —oneline이 보기 편하다.

 

이게 뭘까?

지금 HEAD (내 로컬의 최근이 가르키는 곳 = MAIN = 원격의 MAIN = 원격의 최근)

  • 포인터라고 생각하기.

fetch 한 거 확인하기

git log —all —oneline

→ 그 이후에 git checkout 하고 젤 최근 origin의 작업으로 = head와 origin/main을 맞춰준다

fetch 한 거 가져오기

MERGE인데 주의. MERGE []는, []를 현재에 가져오겠다. ([]를 현재에 가져오는 거 임에 주의!)

git checkout main 이후, git merge {젤 최근 branch}

untrack→track은 add로. track→ 변경사항 있나 없나 는 modified, unmodified로 기본적으로 첫 생성 or modified만 commit의 대상이 된다.

++ 리눅스는 드래그로 복사, 우클릭 + paste로 붙여넣기

즉 push는 작업 시 진행

clone은 원격을 받아 올 때

Fetch는 원격의 최신 작업 내용을 확인한다.

fetch시 주의!! Fetch는 바로 땡기는 pull과 다르다.

일단 local로 가져오지만, 바로 local에 다 반영하지는 않는다. (확인 용이다)