본문 바로가기

메타버스 1기

4/19 Git 명령어

내가 작업한 작업물과 원격 저장소의 작업물이 일치 하지 않을때 그냥 push는 진행되지 않기때문에
git fetch로 원격저장소의 커밋을 가져온뒤  rebase를(또는 merge) 하여 합친 뒤 다시 push로 보내야 한다

 

git pull --rebase 또는 git pull (이 상태는 merge)

 

원격저장소의 main이 잠겨있을경우 branch를 만들어 작업을 해서 올린다

 

 

 

1. 원격 명령어

원격 저장소에 있는 것을 로컬로 불러오는 데 특정 위치를 지정할 수 있고, 반대로도 할 수 있다
git push - 로컬 커밋을 원격저장소로 업데이트 및 원격저장소의 브랜치를 업데이트

git pull - fetch & merge


fetch <remote> <place>

<place> - < source : destinaiton > 브랜치 이름

colon refspec으로 source:destination

git bash

 

 

2. 이외의 명령어

 

Unix

cd : change directory

mkdir : make directory

touch : make a file


git config : 설정
git add : 스테이징 영역 추가
git restore : 스테이징 된 파일을 되돌리는 것 (변경사항 폐기)
git log : 그래프를 보여줌 (show history)

git lg

git init : 레포지토리 생성 (initialize repository)
git status : 레포지토리 상태를 확인

브랜치 meta_3에 있고 클린한상태~

 

 

3. git의 동작

HEAD : 어떤 브랜치를 가리키는지의 대한 내용이 담겨있음

.git

ref/heads 에 브랜치에 대한 파일이 있다

.git > refs > heads

> 해당 파일의 이름은 브랜치의 이름
> 그 파일에는 커밋 ID가 있다 (해시값)

 

 

ref/tags 에 태그에 대한 파일이 있다

.git > refs > tags

> 해당 파일의 이름은 태그의 이름
> 그 파일에는 해시값이 있다

 

 

objects에는 변경 사항이 저장되어 있음. => 각 커밋의 내용

.git > objects

 


4. vi 사용법


명령어 모드와 편집 모드
> i키를 누르면 편집모드
> esc키를 누르면 명령어 모드

명령어모드
편집모드

파일을 저장하고 나가려면  :(콜론)wq (write & quit)