git 사용 명령어 정리
회사에서 소스관리를 git 로 하고 있어 기록 차원에서 명령어를 정리해 두고자 한다.
git 설정
git config --global color.branch auto
git config --global color.diff auto
git config --global color.interactive auto
git config --global color.status auto
특정 commit으로 rollback
git reset --hard 55b4993009f354c6eb34a811c5d36fd20c5df736
특정 commit으로 rollback 햇을 경우 remote repository 에 반영
git push origin +master
특정 파일을 특정 commit으로 rollback
git checkout 55b4993009f354c6eb34a811c5d36fd20c5df736 파일명
master에 new_branch merge
git checkout master
git merge new_branch
직전의 merge 취소
git reset --hard HEAD^
브랜치의 commit 내역빼고 merge 하기
git merge --squash new_branch
git commit -m 'new_branch 합침' -a
merge 충돌시 특정 브랜치의 파일 유지하기
git checkout --theirs (파일명 | 디렉토리)
git checkout --ours (파일명 | 디렉토리)
8. Untracked files gitignore 에 추가하기
git status --porcelain | grep '^??' | cut -c4- >>.gitignore
리모드 repo 추가 후 로컬 master 연결
git branch --set-upstream-to=origin/master master
git tag 삭제
git tag -d 12345
git push origin :refs/tags/12345
local repo를 origin repo 상태로 강제 설정
git fetch origin master
git reset --hard FETCH_HEAD or git reset --hard origin/master
git clean -df
삭제된 파일 복구
git rev-list -n 1 HEAD -- file_path
git checkout <deleting_commit>^ -- file_path
삭제된 파일 복구2
git log --diff-filter=D --summary
git checkout $commit~1 filename
원격 Branch 삭제
git push origin --delete branch_name
특정 단어로 시작하는 Branch 일괄 삭제
git branch | grep 'etc-' | xargs git branch -D