한 걸음씩 기록하며
#.2 Git Local 명령어 정리 본문
1. 버전 저장소 만들기
- $ mkdir 폴더명 : - 프로젝트 폴더를 생성
- $ cd 폴더명 : 해당 폴더 이동
- /폴더명 $ git init : 현재 디렉토리를 git의 버전 저장소로 만든다.
- /폴더명 $ git config —global user.name <username>
- /폴더명 $ git config —global user.email <mailaddress>
2. 기본 명령어
- $ git status : 마지막 커밋 이후 작업공간에서 변경이 일어난 모든 파일들을 나열하는 명령어이다.. 현재 추적되고 있는 파일을 초록색으로 표시하고 그렇지 않은 파일은 빨간색으로 나타난다.
- $ pwd : Print Working Directory
- $ ls : 현재 디렉토리 내의 모든 파일 리스트를 보여준다.
- $ ls -al : 현재 디렉토리 내의 모든 파일의 자세한 내용을 보여준다.
- $ git status -s : Git의 상태를 간략하게 보여준다.
- $ cat 파일명 : 파일의 내용을 보여준다.
- $ echo 파일명 > gitignore : 해당 파일들은 ignore 파일로 분류되어, Git에 커밋되지 않는다.
3. 파일 생성 및 수정
- $ touch : 빈 파일 생성
- $ vim 파일명 : 파일 생성
- i : insert
- :wq : 저장하고 종료
- $ echo "text" > 파일명 : “text”라는 텍스트가 입력된 파일이 생성된다.
- $ echo "text" >> 파일명 : 파일이 해당 “text”로 수정된다.
4. add : 해당 파일을 stage(추적)시키는 명령어
- $ git add 파일명 : 파일을 add
- $ git add *.확장자명 : 디렉토리 내 확장자 명의 모든 파일을 add
- $ git add -A : 모든 것을 add
- git add * 와 git add .의 차이
- git add * 와 git add . 는 이미 삭제되어있는 파일을 어떻게 처리할 것인가의 차이다.
- $ git add * : 삭제했던 파일은 Staging Area에 남아있는 상태에서, 모든 파일 add
- $ git add . : 삭제했던 파일이 Stagint Area에서 사라지는 것을 포함한, 모든 파일 add
5. rm(파일 삭제) : 파일을 unstage(추적해제) 시키는 명령어 (add와 반대)
- $ git rm --cached 파일명: 파일이 staging area에서 삭제되지만, 디렉토리에는 존재한다.
- $ rm 파일명 : 파일이 디렉토리에서 삭제되지만, staging area에는 존재한다.
6. commit : 저장소에 올리는 작업 공간의 하나의 변경된 상태
- $**git commit** : 커밋을 추가하는 명령어
- i → insert / :wq → quit
- (참고: 메시지 줄 바꿈을 원할 시, 터미널에서는 Shift + Enter 를 입력하면 개행됨)
- 커밋 명령어를 사용해서 커밋을 추가하는 것을 가리켜 '커밋한다'라고 부른다.
- 주로 $ git commit -m "(코멘트; 커밋에 덧붙일 말)" 형식으로 사용한다.
- $ git commit --amend : 커밋 메시지를 수정
- $**git checkout** : 커밋을 불러오는 명령어이다.
- git checkout (커밋 해시) 형식으로 사용한다.
- 커밋 해시는 전부 적을 필요는 없고 다른 커밋 해시와 중복되지 않아 고유하다면 앞의 몇 자리만 기입해도 인식된다.
- (Tip: 가장 최근의 커밋을 기준으로 하여 작업공간에서 발생한 변경사항을 모두 버리고 원래 상태로 돌아가는 명령어는 $ git checkout -- . 이다..)
7. log & diff
- $**git log** : commit log을 열람할 수 있도록 하는 명령어
- $ git log —oneline : 한 줄로 커밋 로그를 보여준다.
- $ git log —p : 커밋 로그 내용까지 보여준다.
- $ git log —-reverse : 커밋 로그 내용을 거꾸로(처음부터) 보여준다
- $**git diff** : 커밋과 커밋 사이의 변경사항을 확인할 수 있게 하는 명령어
- $ git diff A B : 버전 A와 B의 차이점을 보여준다.
- $ git diff --staged : staging area에 있는 변화를 보여준다.
8. Reset & Revert
- Reset과 Revert의 차이는?
- Reset
- Reset은 로컬 저장소에 있는 내용만 해야한다.
- Push 된 자료들은 리셋이 안된다.
- Revert
- commit을 취소하면서 새로운 버전을 생성하는 것
- Reset
- $ git reset "버전 ID" —hard : 버전 id로 돌아가는 명령어
- hard는 옵션이다. hard 말고도 다른 옵션이 있다.
- $ git revert "버전 id" : 버전 id의 커밋을 취소한 내용을 새로운 버전으로 만드는 명령어
💡 Commit Naming
- Git commit message를 남길 때, 나름의 규칙들을 가지고 많이 한다.
- 참고하면 좋을 듯한 글이다.
'Git' 카테고리의 다른 글
#.6 Github Flow (0) | 2021.12.22 |
---|---|
#.5 Git Flow (0) | 2021.12.22 |
#.4 branch (0) | 2021.12.22 |
#.3 Remote (0) | 2021.12.22 |
#.1 Git 이란? (0) | 2021.12.22 |
Comments