Git 병합 롤백
develop branch
--> dashboard (working branch)
사용합니다git merge --no-ff develop
업스트림 변경 사항을 대시보드에 병합
Git 로그:
commit 88113a64a21bf8a51409ee2a1321442fd08db705
Merge: 981bc20 888a557
Author: XXXX <>
Date: Mon Jul 30 08:16:46 2012 -0500
Merge branch 'develop' into dashboard
commit 888a5572428a372f15a52106b8d74ff910493f01
Author: root <root@magneto.giveforward.com>
Date: Sun Jul 29 10:49:21 2012 -0500
fixed end date edit display to have leading 0
commit 167ad941726c876349bfa445873bdcd475eb8cd8
Author: XXXX <>
Date: Sun Jul 29 09:13:24 2012 -0500
병합에는 약 50개 이상의 커밋이 포함되어 있으며 대시보드가 사전 병합 상태로 돌아가도록 병합을 되돌리는 방법이 궁금합니다.
두 번째 부분은, 만약 내가 합병하지 않는다면.--no-ff
'지점을 대시보드에 'develop' 병합'이라는 커밋이 표시되지 않습니다.병합을 되돌리려면 어떻게 해야 합니까?
병합 커밋을 되돌리는 것은 다른 질문에서 모두 다루었습니다.빨리 감기 병합을 수행할 때 두 번째로 설명하는 병합을 사용할 수 있습니다.git reset
이전 상태로 돌아가기
git reset --hard <commit_before_merge>
다음을 찾을 수 있습니다.<commit_before_merge>
와 함께git reflog
,git log
또는, 당신이 moxy를 느끼고 있다면(그리고 다른 것은 아무것도 하지 않은 경우): git reset --hard HEAD@{1}
여기서:
http://www.christianengvall.se/undo-pushed-merge-git/
git revert -m 1 <merge commit hash>
Git revert는 지정된 커밋을 롤백하는 새 커밋을 추가합니다.
사용.-m 1
git는 이것이 병합이며 마스터 분기의 상위 커밋으로 롤백하려고 합니다.사용할 수 있습니다.-m 2
develop 분기를 지정합니다.
병합 커밋을 재설정하십시오.git reset --hard HEAD^
.
--no-ffgit을 사용하는 경우, 중간에 아무것도 커밋하지 않은 경우에도 항상 병합을 만듭니다.--no-ffgit를 사용하지 않으면 빠르게 전달되므로 분기 HEAD가 병합된 분기의 HEAD로 설정됩니다.이 문제를 해결하려면 되돌릴 commit-id를 찾고git reset --hard $COMMITID
.
git revert -m 1 88113a64a21bf8a51409ee2a1321442fd08db705
하지만 예상치 못한 부작용이 있을 수 있습니다.봐--mainline parent-number
git-scm.com/docs/git-revert 의 옵션
아마도 잔인하지만 효과적인 방법은 그 커밋의 왼쪽 부모를 체크아웃하고, 모든 파일의 복사본을 만들고, 체크아웃하는 것입니다.HEAD
모든 내용을 이전 파일로 바꿉니다.그런 다음 Git는 무엇이 롤백되는지 알려줄 것이고 당신은 당신 자신의 복귀 커밋을 만듭니다 :)!
분기를 병합한 경우 풀 요청을 사용하여 병합을 되돌린 다음 해당 풀 요청을 병합하여 되돌립니다.
가장 쉬운 방법은 다음과 같습니다.
- 병합한 develop/master에서 새 분기를 꺼냅니다.
- 다음을 사용하여 "반전"을 되돌립니다.
git revert -m 1 xxxxxx
(분기를 사용하여 되돌리기를 병합한 경우) 또는 사용git revert xxxxxx
그것이 단순한 되돌림이었다면. - 이제 새 분기에 다시 병합할 변경 사항이 있습니다.
- 변경하거나 이 분기를 병합하여 개발/마스터
언급URL : https://stackoverflow.com/questions/11722533/rollback-a-git-merge
'programing' 카테고리의 다른 글
앱 설정을 통한 Azure Function 타이머 구성 (0) | 2023.05.02 |
---|---|
안드로이드 앱을 개발하기에 가장 좋은 IDE는 무엇입니까? (0) | 2023.05.02 |
bash 변수가 0인지 확인합니다. (0) | 2023.04.27 |
설치된 MS-Office 버전을 검색하는 방법은 무엇입니까? (0) | 2023.04.27 |
Azure PowerShell을 사용하여 기존 Azure 웹 애플리케이션에 앱 설정 추가 (0) | 2023.04.27 |