git는gitworkflow의 제출 또는 merge를 어떻게 취소합니까

1270 단어
팀워크 개발 과정에서 자주 이런 상황이 발생한다. 실수로 잘못된 코드가 합쳐졌을 수도 있고 합쳐진 후에 합쳐진 코드에 문제가 있다는 것을 발견할 수도 있지만 이미 새로운 제출이 들어왔다. 어떻게 조작합니까?

일반적으로 다음 세 가지 방법이 사용됩니다.

  • revert 실행 취소,git revert: 단일 실행 취소, 그리고 일련의 제출,git revert...앞뒤로 닫다.예를 들면 다음과 같습니다.
    git revert --no-commit s32342d..23wsd23  # --no-commit                
    git commit -a -m 'revert commit from s32342d to  23wsd23'

    즉: s32342d를 제거한 후 23wsd23의 모든 버전입니다.HEAD 업로드 제출 하나 더: revert commit from s32342d to 23wsd23
  • 특징: 다른 지점 구성이 필요 없고 본 지점의 이전 작업 흐름을 바꾸지 않고 새로운 작업만 할 수 있어 보호된 지점에 적합하다
  • Rebase drop을 통해 제출
  • 제출을 취소할 이전 제출을 찾았습니다:commitid
  • git rebase - i commit 사용id 수정, commitid 앞의 pick을drop
  • 으로 변경
  • 저장 종료
  • git push -f


  • 특징: 조작은 간단하지만 바꾸면 작업 흐름이 바뀐다
          3. rebase,git cherry-pick
  • 취소할 commit,rebase를 합쳐서 제출commitid
  • commit을 취소하기 전의 차 노드에서 새로운 지점을 끌어낸다
  • 새로운 지점 tmp 합성commitid
  • 원래 분기 실행 버전 예비(fallback)
  • 합병 tmp
  • git push -f


  • 특징: 조작이 복잡하고 작업 흐름을 바꿀 수 있으나 새로운 지점으로 인해 과정 중 오류가 원래 지점에 미치는 영향을 감소시킨다

    좋은 웹페이지 즐겨찾기