- “Do it! 지옥에서 온 문서 관리자 깃 & 깃허브 입문” 도서의 내용을 정리한 내용입니다.
유용한 터미널 명령어들
- pwd: print working directory
- ls: directory 내 내용 출력
- -a : 숨김파일과 디렉토리
- -ㅣ: 상세정보
- -r: 파일 정렬 순서 역순
- -t: 시간 역순
- mkdir: make directory
- rm: remove
- -r: 하위 디렉토리, 파일도 함께 제거
- nano: default text editor
- ssh-keygen: 디렉토리의 ssh키 generate - public & private
기본적인 git 명령어들
- git status: 깃 상태 확인
- git add
: 파일 스테이징 - untrack file의 경우, 커밋을 위해 최초 1회 스테이징이 필수!
- git commit: 스테이지 내용 커밋
- -m: 메세지 삽입 “
내용” - -a: add와 commit을 함께 진행
- —-amend: 방금 추가한 커밋메세지 수정
- -m: 메세지 삽입 “
- git log: 깃 저장소에 저장된 버전 확인
- (HEAD → master): 최신 버전
- –stat: 커밋 상세 내용 확인
- –oneline: log가 한줄로 된 간략 버전
- –branches: 각 branch 커밋 정보를 포함하는 log
- –graph: 분기 상태를 표시
- git log
.. : branch1에 없는 branch2의 커밋을 표시
git 수정을 위한 명령어들
- git diff: 작업 트리의 버전과 저장소 최신 버전 비교
- .gitignore: 해당 파일 속 내용은 track하지 않음
- git restore
: 저장소 최신 버전으로 되돌리기 - git reset HEAD
: unstage 명령 - git reset HEAD^: 작업트리를 저장소 최신 버전으로 되돌리기
- —-soft: 최신 커밋 하기 전 상태로 작업트리 되돌리기
- —-mixed: 최근 커밋과 스테이징 전 상태로 작업트리 되돌리기(default)
- —-hard: 최근 커밋, 스테이징, 수정 전으로 되돌리기(내용 손실 주의!)
- —-hard
: 해당 해쉬의 커밋 상태로 되돌리기
- git reset
: 입력 hash(다른 branch여도 상관없음)로 최신 커밋을 수정 - git revert
: 해당 커밋 상태로 되돌리고 커밋은 남김, 커밋 메세지 수정 - git stash: 현재 작업 트리를 stash list에 저장 - 스테이징, 커밋 방지, 수정 감지 x
- list: 현재 stash stack을 보여줌
- pop: stash stack 0번째 pop 이후 stash에서 제거
- apply: stack 유지한채 0번째 stack 내용을 작업 트리에 복사
- drop: stack 0번째 제거
git branch 관리 명령어들
- git branch: 현재 branch 리스트 출력
- git branch
: 이름의 branch 생성 - -d : 해당 branch 제거
- git checkout
: 이름의 branch로 이동 - -b: 이름의 branch 생성 포함
- git branch merge
: HEAD의 branch에 입력 branch를 병합 - 병합 충돌 시, 사용자 수정이 필요
- meld, p4merge 등의 difftool을 이용하여 병합 자동화 가능
git hub(원격 저장소) 관리 명령어들
- git remote add origin
: 원격 저장소 추가 - git remote -v: 연결된 원격 저장소 확인
- git push -u origin master: (한번만) 지역 저장소 브랜치를 원격 저장소 master 브랜치를 연결
- git push
- git pull origin master: 원격 저장소의 내용을 master branch
- git clone
- git fetch: 원격 저장소의 커밋 참고하기
- git checkout FETCH_HEAD: fetch된 원격 저장소 커밋 확인
- git merge FETCH_HEAD → 원격 저장소 branch와 merge