git 사용법 _ 명령어
- git은 CLI, GUI를 모두 사용할 수도 있지만, GUI의 대부분은 git 기능 중 일부만 구현하며, 모든 기능을 지원하는 것은 CLI다.
- 또, CLI를 사용할 줄 알면 GUI도 사용할 수 있지만 반대는 성립하지 않는다.
- 아래는 CLI(git bash)를 효율적으로 사용하기 위한 git 명령어들이며, git bash 또는 터미널의에서 사용할 수 있다.
1. UNIX 명령어
- 터미널을 사용하기 위한 기본적인 명령어
용도 | 명령어 |
디렉터리 생성 | mkdir <디렉터리명> |
파일 내용 출력 | cat <파일명> |
현재 디렉터리 내용 출력(숨김 파일 제외) | ls |
현재 디렉터리 내용 출력(숨김 파일 포함) | ls -a 또는 ls -al |
디렉터리 위치 이동 | cd <경로> |
2. git 기본 명령어
- git 기본 작업을 위한 명령어
용도 | 명령어 |
저장소 생성 | git init |
스테이지에 파일 추가 | git add <파일명> |
현재 작업 디렉터리의 변경사항을 모두 스테이지에 추가 | git add . |
커밋 (커밋 메시지 작성) | git commit |
커밋 (커밋 메시지 헤더만 작성) | git commit -m "커밋 메시지 헤더" |
스테이지 추가와 커밋 동시에 하기 (*Tracked File에 한해 사용 가능) |
git commit -am "커밋 메시지 헤더" |
저장소 파일 모두 커밋 | git commit -a |
저장소 상태 확인 | git status |
3. git 브랜치 관리 명령어
- git 브랜치 사용을 위한 명령어
용도 | 명령어 |
저장소 상태 확인 | git status |
새로운 브랜치 생성 | git branch <브랜치명> |
해당 브랜치로 체크아웃 | git checkout <브랜치명> |
새로운 브랜치를 생성하고 해당 브랜치로 체크아웃 | git checkout -b <브랜치명> |
브랜치 병합 | git merge <브랜치명> |
브랜치 이름 바꾸기 | git branch -M <바꿀 브랜치명> |
브랜치 삭제 | git branch -d <브랜치명> |
4. 파일 생성, 삭제 명령어
용도 | 명령어 |
파일 생성 | touch 파일명 |
파일 삭제 | rm 파일명 |
5. git log 명령어
- git 변경기록을 확인하기 위해 log와 log의 옵션을 사용할 수 있다.
용도 | 명령어 |
커밋 목록 조회 | git log |
커밋 목록 조회(한 줄로) | git log --oneline |
커밋 변경내용 확인 | git log -p |
커밋 목록을 그래프로 확인 | git log --graph |
(위의 명령어들을 혼용하여 사용 가능) | git log --oneline --graph |
git log --oneline -p | |
diff 명령의 실행결과 확인 | git log --word-diff |
커밋에서 수정된 정보 확인 | git log --stat |
커밋에서 수정된 파일 목록 확인 | git log --name-only |
현재기준 상대적인 시간으로 로그 확인 | git log --relative-date |
6. 비교하기
용도 | 명령어 |
현재 작업 디렉터리의 작업내역과 최신 커밋 비교 | git diff |
스테이지의 작업내역과 최밋 커밋 비교 | git diff --staged |
커밋끼리 비교 | git log <커밋해시> <커밋해시> |
7. 되돌리기
- revert : 특정 커밋 취소(revert)하기. 기존의 커밋내역은 유지
- reset : 특정 커밋으로 되돌아가기(reset). 기존의 커밋 내역에 영향
용도 | 명령어 |
특정 커밋 취소하기 (기존의 커밋내역 유지) | git revert <취소할 커밋> |
Soft reset : 커밋을 했다는 사실만을 되돌리기 | git reset --soft <되돌아갈 커밋> |
mixed reset : 스테이지에 추가했다는 사실까지 되돌리기 | git reset --mixed <되돌아갈 커밋> |
git reset <되돌아갈 커밋> | |
hard reset : 변경사항을 만들었다는 사실까지 되돌리기 | git reset --hard <되돌아갈 커밋> |
8. 원격 저장소를 활용하기 위한 명령어
용도 | 명령어 |
원격 저장소 이름 조회 | git remote |
원격저장소 이름 + url 조회 | git remote -v |
원격 저장소 추가 | git remote add <원격저장소명> <원격저장소경로> |
원격 저장소의 내용을 로컬 저장소로 복사 | git clone <원격저장소경로> |
로컬 저장소의 변경내용을 원격 저장소에 반영 | git push <원격저장소명> <로컬브랜치명> |
* 참고) -u 옵션과 함께 push하면 이후로 <원격저장소명> <로컬브랜치명> 생략 가능 |
git push -u <원격저장소명> <로컬브랜치명> |
원격 저장소의 변경내용을 로컬 저장소에 반영 | git pull <원격저장소명> <로컬브랜치명> |
로컬 저장소와 원격 저장소의 차이를 비교 후 반영 | git fetch <원격저장소명> <로컬브랜치명> |
반응형
'DEV > Git' 카테고리의 다른 글
git :: 깃 허브 계정 연결(소스트리) (0) | 2022.09.17 |
---|---|
git :: Sourcetree(소스트리) 설치 (0) | 2022.09.16 |
git :: git 기능, 버전 관리 (2) | 2022.09.14 |
Git 협업 툴 :: 깃 설치(git install) (2) | 2022.09.10 |
파이썬 코딩 :: 깃/깃 허브 활용_TIL#09 (2) | 2022.09.10 |
댓글