저장소 생성
생성할 폴더로 이동 후 아래 명령어 입력
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 |
---|