반응형

저장소 생성

생성할 폴더로 이동 후 아래 명령어 입력

git init

원격 저장소로부터 복제

git clone [url] [save folder]

모든 것이 Staged 상태인지 확인

`Changes to be committed` 에 있는 파일은 Staged 상태라는 것을 의미한다.

커밋하면 `git add 를 실행한 시점의 파일이 커밋되어 저장소 히스토리에 남는다.

`Changes not staged for commit` 에 있는 파일은 수정한 파일이 Tracked 상태이지만 아직 Staged 상태는 아니라는 것이다.

git status

Staged 상태로 만들기

git add [file name]
git add *
git add .

커밋(확정)하기

Unstaged 상태의 파일은 커밋되지 않는다는 것을 기억해야 한다.

Git은 생성하거나 수정하고 나서 git add 명령으로 추가하지 않은 파일은 커밋하지 않는다.

(그 파일은 여전히 Modified 상태로 남아 있다.)

git commit -m [message]

변경 내용 원격 서버에 올리기

git push origin master
git push origin [branch name]

가지치기

A와 B 기능을 나눠 개발하고 싶을 때

git checkout -b [branch name]

가지 목록

# 로컬 가지목록
git branch
# 원격 가지 목록
git branch -r
# 모든 가지 목록
git branch -a

가지 이동

git checkout master
git checkout [branch name]

가지 삭제

git branch -d [branch name]

다른 가지와 병합

합치고 싶은 가지고 이동 후 아래 명령어 실행

git merge [합치고 싶은 branch name]

로컬 저장소를 원격 저장소에 맞춰 갱신

받아지고(fetch), 병합(merge)됨

항상 push 전 pull을 실행해준다.

git pull
git pull origin master
git pull origin [branch name]

파일 조작

특정 커밋으로 되돌리기, Unstaging 시키기 등

특정 파일을 Head Commit으로 복구함

git restore [file name]

특정 Commit으로 복구함

git restore --source [commit hash] [file name]

add 취소하기(Staging Area에 올라긴 파일 다시 Unstaging시키기)

git restore --staged [file name]

작업중 파일과 add파일 비교

Working Directory와 Staging Area 비교

git diff
git diff [file name]

작업중, add된 파일의 변경사항 모두를 Repository와 비교

git diff HEAD

Staging Area(add된 파일)와 Repository비교(가장 많이 사용됨)

commit 단위

git diff --staged
git diff --staged [file name]

 

반응형

'programming > git' 카테고리의 다른 글

[Git] 설치 및 초기 설정  (0) 2022.12.12

+ Recent posts