gitlab, github등에 취소해야 되는 commit이 있는데 이미 push 해버렸을 때
git bash에서
git reset --hard 되돌아가고자 하는 커밋주소
ex)
git reset --hard 14afbg24
- 커밋 주소는 git log 로 알 수 있다
- reset 옵션으론 hard, soft, mixed 가 있다
그 후
git push origin +브랜치명
ex)
git push origin +master // master 브런치 푸쉬
브랜치 명 앞에 +를 붙여야 한다(덮어씌운다는 의미)
+ 없이 push 해버리면 최근 커밋을 pull 하라며 에러가 난다.
만약
! [remote rejected] master -> master (pre-receive hook declined)
이런 에러가 났다면 해당
project settings > Repository > Protected Branches
에서 unprotected로 해당 브랜치를 설정해주면 된다 (보통 master에 걸려있음)
allow force push 를 체크해서 활성화 시켜주면 됩니다.
'Git > 명령어,작업' 카테고리의 다른 글
깃 푸쉬한 특정 유저 전부 변경 (0) | 2023.02.15 |
---|---|
[GitLab] git branch delete 안될때 (0) | 2023.02.08 |
stash(intelij) (0) | 2022.04.01 |
기초명령어 (0) | 2022.03.31 |