My Profile Photo

Song's Bio-Cheminformatics


in silico drug discovery, AI, database, multi-omics


git & github 유용한 terminal 명령어 정리

  • “Do it! 지옥에서 온 문서 관리자 깃 & 깃허브 입문” 도서의 내용을 정리한 내용입니다.

code-1839406_1280.jpg

유용한 터미널 명령어들

  • 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: 방금 추가한 커밋메세지 수정
  • 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