본문 바로가기

프로그래머/기타

[Git] cheat sheet 모음 | git 명령어 정리

git 명령어 정리

  • git init
  • git status
  • git add chapter1.txt
  • git commit -m "Complete Chapter 1"
  • git log
  • git diff chapter3.txt
  • git checkout chapter3.txt
    • roll back to the last version committed in our local repo
  • git remote add origin "url of the remote repo on Git"
    • origin is the name of the remote
  • git push -u origin master
    • u flag which links up the remote and the local repo
    • origin : name of remote
    • master : name of branch
  • git rm --cached -r .
    • r flag for recursive
    • use a . to remove everythin inside the current directory
  • touch .gitignore
  • write filenames to .gitignore
  • git branch "branch name"
    • create a new branch
  • git branch
    • show existing branches
  • git checkout "branch name"
    • change branch
  • git checkout master
  • git merge "branch name"
  • "pull request"
  • "fork"
  • git fork & clone의 차이
    • fork는 다른 사람의 github repo을 내 github repo로 그대로 복제하는 기능
    • fork한 저장소는 원본과 연결되어 있다
      • original repo에 어떤 변화가 생기면 이는 그대로 forked repo로 반영할 수 있다 - 이 때 fetch나 rebase의 과정이 필요하다
    • 그 후 original repo에 변경사항을 적용하고 싶으면 해당 저장소에 pull request를 해야 한다
    • clone은 특정 repo를 내 local machine에 복사하여 새로운 저장소를 만든다
    • clone한 원본 repo를 remote 저장소 origin으로 가지고 있다
    • 권한이 없는 경우 해당 저장소로 push하지 못한다
    • 기존의 제일 처음 original repo와 연결되지 못한다
  • git pull & fetch의 차이
    • pull은 git remote의 명령을 통해 연결된 remote repo의 최신 내용을 local machine으로 가져오면서 병합한다
      • push의 반대 성격
      • 자동으로 merge까지 수행
    • fetch는 local machine과 remote repo의 변경 사항이 다를 때 이를 비교 대조하고 merge 명령어와 함께 최신 데이터를 반영하거나 충돌 문제 등을 해결한다
      • 즉, 자동으로 merge해주지 않기 때문에 본인이 직접 확인 후 merge하는 과정을 거쳐야 한다
  • git stash
    • 아직 마무리하지 않은 작업을 스택에 잠시 저장한다
    • 이를 통해 아직 완료되지 않은 일을 commit하지 않고 나중에 다시 꺼내와 마무리할 수 있다
    • git stash
    • git stash list
    • git stash apply
    • git stash drop
    • git stash show -p | git apply -R