커뮤니티에서 좋은 글 보고 옮겨봅니다.
$ git remote update
$ git checkout -t origin/features-back
$ git push origin --delete feat/changebatchapi
또는
$ git push origin :feat/changebatchapi
$ git clean -df
$ git diff-tree —no-commit-id —name-only -r 8519a66faca46f47193f2bd9e90260174fcd60d6
$ git show —pretty=“” —name-only 8519a66faca46f47193f2bd9e90260174fcd60d6
$ git fetch origin master:master
$ git stash drop #순서대로
$ git stash drop stash@{2} #specific
$ git stash apply stash@{0} #stash 비우지 않고 꺼내기
$ git clean -n #정리 미리보기
$ git clean -f #워킹디렉토리 정리
$ git checkout <커밋아이디> <특정파일경로> #head 에서 하고 싶은경우 커밋아이디 생략
$ git reset HEAD <특정파일경로>
$ git cherry-pick <커밋아이디>
$ git diff HEAD HEAD^1 # head , head 직전 commit
$ git diff <commit-A> <commit-B> # commit-A , commit-B
$ git diff --staged #
$ git diff -h
$ git branch -a #local & remote
$ git branch -r #local
$ git remote -v
$ git checkout -t origin/work-br
$ git log --pretty --oneline --graph --stat -p #normal
$ git log --author=<작성자>
$ git checkout -b new-branch v2.0.0. # -b {브랜치명} {tagname}
$ git rebase -i HEAD~3 # 최근 3개의 commit 을 한개 commit 으로 변경
$ git log readme.md
$ git log -p README.md # 파일 변경내역 포함
$ git log -p -5 readme.md # 출력라인 5개로 제한