Github의 Pull Request가 Revert된 후 코드를 복원하는 방법을 알려주세요.
시나리오는 다음과 같습니다.
현재 2개의 브랜치가 있습니다. 하나는 pre_release 브랜치이고 다른 하나는 feature_order 기능 브랜치입니다
단계는 다음과 같습니다.
1. 이제 feature_order 기능 브랜치를 수정한 후 GitHub에서 Pull Request 작업을 사용했습니다.
pre_release pre-release 브랜치가 Pull Request에 동의했습니다.
코드를 요청하고 병합했습니다. 그런데 이때 문제가 발생하여 Revert를 수행해야 합니다. 되돌리기 요청
증상은 다음과 같습니다.
1. Revert 이후 feature_order 기능 브랜치가 pre_release pre-release 브랜치에서 로컬 Merge merge로 코드를 가져오는데, 이전 Pull Request의 코드가 있는 것을 발견합니다. 삭제되었습니다
2. pre_release에서 다운로드되지 않은 경우 pre-release 브랜치에서 코드를 가져오면 Pull Request 작업을 다시 수행할 수 없습니다. 이는 CommitId와 관련이 있음을 나타냅니다. , Revert가 새로운 Pull을 시작하기 때문입니다. Request 이후에 수행된 Merge는 이전 Merge가 이미 기록되어 있으므로 별다른 변경 없이 타당해 보입니다
Revert 작업에 의해 방금 시작된 Pull Request에 의해 생성된 커밋이 pre_release pre-release 브랜치에서 다시 되돌려지지 않는 한, 즉 "실행 취소" 작업이 취소되지 않는 한, 이 경우 철회하려는 코드 다시 pre_release에 들어갈 예정입니다. pre-release 브랜치만 복원 가능합니다...
제가 원하는 것은 feature_order 기능 브랜치의 코드가 삭제되지 않는 것입니다. pre_release pre-release 브랜치에 대한 Pull Request를 시작할 수 있으며, 철회 후에도 코드가 삭제되지 않습니다.
실례합니다, 선배님들, 어떻게 해야 하나요? 정말 답이 없는 무한 루프네요...
이런 종류의 작업을 처리하는 방식은 다소 거칠습니다. 저는 보통 revert를 사용하지 않고 재설정을 사용하여 풀 요청 전에 pre_release 분기를 해시로 재설정합니다.
이런 종류의 오류 작업을 처리할 때 매우 유용한 두 가지 명령인 Cherry-Pick과 Rebase가 권장됩니다.
내 로그의 또 다른 기사가 첨부되어 있습니다: http://leo108.com/pid-2026.asp