변경 사항 되돌리기
Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
코드에서 실수가 발생합니다. 커밋을 되돌릴 때 프로젝트 히스토리에서 문제의 존재를 지우는 것이 아니라 잘못된 변경 사항을 역으로 적용하는 새 커밋(되돌리기 커밋)을 만듭니다. 되돌리기는 커밋에만 국한되지 않습니다. 머지 리퀘스트가 머지된 후 머지 리퀘스트의 모든 변경 사항을 되돌릴 수 있습니다.
코드에서 실수가 발생합니다. 버전 관리를 사용하면 이러한 실수를 되돌려 수정할 수 있습니다.
커밋을 되돌릴 때 프로젝트 히스토리에서 문제의 존재를 지우는 것이 아니라 잘못된 변경 사항을 역으로 적용하는 새 커밋(되돌리기 커밋)을 만듭니다. 되돌리기 커밋은 이전 커밋이 있던 곳에 공백이 아닌 명확한 감사 추적을 제공합니다. 되돌리기 커밋은 프로젝트의 액세스 제어와 프로세스를 따르며:
- 원래 커밋에서 추가된 줄을 제거합니다.
- 원래 커밋에서 제거된 줄을 복원합니다.
- 원래 커밋에서 수정된 줄을 이전 상태로 복원합니다.
되돌리기는 커밋에만 국한되지 않습니다. 잘못된 변경 사항이 하나 이상의 커밋에 걸쳐 있는 경우 커밋별로 되돌리는 것보다 머지 리퀘스트의 모든 변경 사항을 되돌리는 것을 고려하세요. 이 접근 방식은 더 깔끔한 감사 추적을 제공합니다.
머지 리퀘스트 되돌리기#
머지 리퀘스트가 머지된 후 머지 리퀘스트의 모든 변경 사항을 되돌릴 수 있습니다.
사전 요구 사항:
-
머지 리퀘스트를 편집하고 저장소에 코드를 추가할 수 있는 프로젝트 역할이 있어야 합니다.
-
프로젝트는 Settings > Merge requests에 설정된 머지 방법 Merge Commit을 사용해야 합니다.
GitLab 16.9 이상에서 다음 중 하나인 경우 GitLab UI에서 빠른 전진 커밋을 되돌릴 수 있습니다:
- 커밋이 스쿼시된 경우, 또는
- 머지 리퀘스트에 단일 커밋이 포함된 경우.
머지 리퀘스트 Example을 되돌리려면:
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 왼쪽 사이드바에서 Code > Merge requests를 선택합니다.
- 보조 메뉴에서 Merged를 선택하고 머지 리퀘스트(여기서는
Example)를 선택합니다. - 머지 리퀘스트 보고서 영역으로 스크롤하여 Merged by 정보가 표시된 보고서를 찾습니다.
- Revert를 선택합니다.
- Revert in branch에서 변경 사항을 되돌릴 브랜치를 선택합니다.
- 머지 리퀘스트 없이 즉시 되돌리려면:
- Start a new merge request를 해제합니다.
- Revert를 선택하면
Example의 되돌리기가 완료됩니다.
- 즉시 되돌리는 대신 새 머지 리퀘스트에서 되돌리기를 검토하려면 Start a new merge request를 선택한 다음:
- 되돌리기 머지 리퀘스트의 필드를 작성하고 Create merge request를 선택합니다.
- 머지 리퀘스트가 머지되면
Example의 되돌리기가 완료됩니다.
커밋 되돌리기#
저장소의 모든 커밋을 다음 중 하나로 되돌릴 수 있습니다:
- 현재 브랜치.
- 새 머지 리퀘스트.
사전 요구 사항:
- 프로젝트에 대한 역할이 머지 리퀘스트를 편집하고 저장소에 코드를 추가할 수 있어야 합니다.
- 이 경우 Revert 옵션이 표시되지 않으므로 커밋이 이미 되돌려지지 않아야 합니다.
이 작업을 수행하려면:
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 커밋이 포함된 머지 리퀘스트를 알고 있는 경우:
- 왼쪽 사이드바에서 Code > Merge requests를 선택한 다음 머지 리퀘스트를 선택합니다.
- Commits를 선택한 다음 되돌리려는 커밋의 제목을 선택합니다. 이는 머지 리퀘스트의 컨텍스트에서 커밋을 표시합니다.
- 보조 메뉴 아래에 GitLab이 Viewing commit
00001111메시지를 표시합니다. 여기서00001111은 커밋의 해시입니다. 커밋 해시를 선택하여 커밋 페이지를 표시합니다.
- 커밋이 어떤 머지 리퀘스트에서 왔는지 모르는 경우:
- 왼쪽 사이드바에서 Code > Commits를 선택합니다.
- 커밋의 제목을 선택하여 커밋에 대한 전체 정보를 표시합니다.
- 오른쪽 상단에서 Options를 선택한 다음 Revert를 선택합니다.
- Revert in branch에서 변경 사항을 되돌릴 브랜치를 선택합니다.
- 머지 리퀘스트 없이 즉시 되돌리려면:
- Start a new merge request를 해제합니다.
- Revert를 선택합니다.
- 즉시 되돌리는 대신 새 머지 리퀘스트에서 되돌리기를 검토하려면 Start a new merge request를 선택한 다음:
- 되돌리기 머지 리퀘스트의 필드를 작성하고 Create merge request를 선택합니다.
- 머지 리퀘스트가 머지되면 커밋 되돌리기가 완료됩니다.
다른 부모 커밋으로 머지 커밋 되돌리기#
머지 커밋을 되돌릴 때 머지한 브랜치(종종 main)는 항상 첫 번째 부모입니다. 머지 커밋을 다른 부모로 되돌리려면 명령줄에서 커밋을 되돌려야 합니다. Git으로 변경 사항 되돌리기 및 취소를 참조하세요.
저장소에서 텍스트 수정#
저장소에서 텍스트 수정하고 데이터를 제거하는 다른 기술에 대한 자세한 내용은 저장소 크기를 참조하세요.
관련 주제#
- 공식
git revert문서 - Git을 사용하여 변경 사항 취소
- Commits API를 사용하여 커밋 되돌리기
- 변경 로그가 되돌린 커밋을 처리하는 방법
