기본 명령어
- cd : 경로 이동
- mkdir <디렉토리 이름> : <디렉터리 이름>의 비어있는 디렉터리(폴더)를 생성
- pwd : 현재 경로를 출력
- ls : 현재 위치의 폴더를 출력
- ls -al : 숨김 폴더도 출력
- ~ : 홈 디렉터리 (기본 명령어 경로)
- touch <파일명> : <파일명>을 가진 비어있는 파일 생성
- rm <파일명> : <파일명>을 가진 (폴더가 아닌) 파일 삭제
- vi <파일명> : <파일명>을 vi 편집기로 편집
- a or i : 입력모드 전환
- esc : 한 칸(줄) 띄우고 입력모드 종료
- :wq : 입력내용 저장 후 vi 편집기 종료
- cat <파일명> : <파일명>에 적힌 내용을 출력
- (참고) 입력모드를 빠져나온 뒤 u : undo(변경사항 취소)
- set nonu : vi 입력창 숫자 숨기기
- set nu : vi 입력창 숫자 보이기
사용자 설정
(Windows, git bash 기준)
$ git config –global user.name “영어 이름”
$ git config –global user.email “영어 이메일”
깃 명령어
git clone
git clone <URL> : 원격저장소(깃허브)에 내용이 복사됨
git branch
git branch : 브랜치 목록이 출력
git branch <브랜치명> : <브랜치명>의 브랜치가 생성
git branch -d <브랜치명> : <브랜치명>을 삭제
기타 깃 명령어
git init : 로컬 저장소 만들기
git status : 작업 디렉터리 상태 확인
git remote add origin <주소> : 깃 연동하기
git remote -v : 깃 연동 확인
git remote remove origin : 연동된 깃을 삭제
git rm –cached <파일명> : <파일명>을 삭제
git checkout <브랜치> : 브랜치로 전환git switch <브랜치> : 브랜치로 전환
git add
git add <파일명> : <파일명>을 스테이지에 추가
git add . : 현재 경로에 있는 파일 모두 스테이지에 추가
git restore --staged <파일명> : <파일명>을 스테이지에서 내리기
git commit
git commit : 커밋하기
제목과 본문 사이의 빈 줄(enter 띄어쓰기), 본문은 생략 가능
git commit -m “제목” : 커밋 내용 없이 제목만 설정
git commit -am : 한번이라도 변경사항을 추적해본 파일
git log
git log : 깃 버전을 보여줌
git log --patch( git log -p ) : 각 커밋의 diff 결과를 보여줌. 나가기는 q
git log --oneline : 깃 버전을 한 줄로 표현
git log --graph : 깃 버전이 그래프로 표현
git tag
git tag 태그명 : 바로 전에 커밋한 파일에 태그가 붙음
git tag 태그명 커밋해시(or 짧은 커밋해시) : 지정한 커밋해시에 태그가 붙음
git tag : 태그 목록 보기
git tag --list '조회' ( git tag -l '조회' ) : 태그 목록에서 태그를 조회
git tag --delete 태그명( git tag -d 태그명 ) : 태그 삭제하기
git diff (변경사항)
git diff : 지금까지 변경사항(작업디렉터리)과 최신커밋의 차이를 보여줌
git diff --staged(git diff --cached ) : 스테이지와 최신커밋을 비교
git diff A(old)커밋해시 B(new)커밋해시 : B는 A와 무엇이 다른가? *순서가 중요
git 되돌리기
git revert 취소할_커밋해시 : 새 branch
git reset 되돌아갈_커밋해시 : mixed 리셋
git reset --soft 되돌아갈_커밋해시 : soft 리셋
git reset --hard 되돌아갈_커밋해시 : hard 리셋
git stash
git stash -m "제목" : 임시저장
git stash list : 임시저장 목록을 보여줌
가장 최신 저장은 {0}번이 갖는다
git stash apply stash@{} : 임시저장 불러오기
git stash drop stash@{} : 임시저장 삭제
git pull
Sync fork : (깃허브) 포크로 복사해온 원본을 최신화
git pull : 원격 저장소 최신 파일을 내려받아 merge
충돌 해결하기
파일 직접 수정해야 함. 다시 커밋해야함.
git merge <브랜치> : 체크아웃은 반드시 병합하려는 대상에 두어야 함. ex) main으로 병합시 checkout이 main
git rebase <브랜치> : 특정 시점으로 브랜치를 재배치
git fetch
git fetch : 일단 갖고만 와서 내용을 확인한다.
git push
git push -u origin main : 다음에 푸시, 패치, 풀 할 때 git push/git fetch/git pull만 입력해도 됨
git push origin 브랜치명: 브랜치를 푸시
'Git' 카테고리의 다른 글
[Git] 소스트리 풀 리퀘스트 (0) | 2023.03.26 |
---|---|
[Git] 소스트리 패치와 풀 (0) | 2023.03.26 |
[Git] 소스트리 클론과 푸시 (0) | 2023.03.26 |
[Git] 소스트리와 깃허브 연동 (0) | 2023.03.26 |
[Git] 소스트리 브랜치 재배치 (0) | 2023.03.26 |