Perforce P4V에서 "롤백…"과 "제출 된 변경 목록 #####"의 차이점은 무엇입니까?


198

체크인 중 하나의 변경 사항을 되돌리고 싶습니다. 특정 변경 목록의 마우스 오른쪽 버튼 클릭 컨텍스트 메뉴에는 다음 두 가지 옵션이 있습니다.

  • 롤백 ...
  • 제출 된 변경 사항 취소

이 둘의 차이점은 무엇입니까? 어떤 상황에서 어느 쪽을 사용해야합니까?


3
이 경우 '제출 된 변경 목록 취소'는 내 상황에 맞는 옵션이었습니다 (체크인에서 변경 사항을 되돌리려는 경우에만). 큰 답변에 감사드립니다.
Dave Andersen

답변:


222

이 두 가지 작업 모두 파일 세트를 이전 상태로 복원하며 p4 obliterate명령을 사용하는 것보다 실수를 더 빠르게 실행하는 더 빠르고 안전한 방법입니다 (그리고이를 사용하기 위해 관리자 액세스가 필요하지 않음).

"롤백 ..."의 경우, 파일 수, 심지어 전체 저장소 일 수 있습니다. 특정 개정, 변경 목록 또는 레이블로 롤백하도록 지시 할 수 있습니다. 파일은 해당 개정, 변경 목록 또는 레이블 작성 당시의 상태로 복원됩니다.

"제출 된 변경 목록 #####"의 경우, 복원 작업은 변경 목록 #####에서 제출 된 파일로 제한됩니다. 해당 파일은 이후에 해당 파일이 변경되지 않은 경우 해당 변경 목록을 제출하기 전의 상태로 복원됩니다. 해당 파일 중 하나라도 이후에 변경 한 경우 Perforce는 해당 파일이 오래되었다고 알려줍니다. 헤드 개정과 동기화 한 다음 차이점을 해결해야합니다. 이렇게하면 실제로 유지하려는 변경 내용이 실수로 방해되지 않습니다.

두 작업 모두 이전 개정을 새로운 개정으로 제출하여 작동합니다. "롤백 ..."을 수행하면 이후에 발생한 작업에 관계없이 파일을 특정 시점의 상태복원합니다 . "다시 시작 ..."을 수행 할 때 이후에 발생한 변경 사항을 유지하면서 특정 시점에서 변경 한 내용취소 하려고합니다 .


18
내가 생각 "뒤로 아웃 제출 변경 목록이 #####"한다 시도 주어진 변경 목록 후 동일한 파일에 수행 된 변경 사항을 유지 할 수 있습니다.
Ian Ringrose

1
@Ian : 좋은 관찰. 내가 이것을 쓸 때 나는 즉시 실수 를 바로 잡는 줄을 따라 생각하고 있었다 . 일반적으로 그렇듯이 훨씬 나중에 무언가를 취소하려는 경우 더 복잡해집니다. 나는 대답을 다듬었다.
까마귀

@IanRingrose 방금 "백 아웃"작업을 수행 한 후 나중에 변경 한 내용을 유지 하지 않는 것 같습니다 . 취소 후 제출 된 변경 사항을 다시 가져 오려면 동기화를 수행 한 후 해결해야했습니다.
gdw2

@ gdw2, 만약 당신이 "롤백"을했다면 "다음에 제출 된 변경 사항을 다시 얻기 위해 해결하기위한 옵션"을 얻지
못할 것입니다.

1
파일이 원래 상태로 복원되었지만 메타 데이터는 그렇지 않습니다. 다른 지점에서 통합을 롤백하려고하면 메타 데이터에 이미 통합되어 있으므로 통합을 다시 수행 할 수 없습니다.
Will Brode

17

변경 목록 제출 취소

성공적인 변경 목록 제출을 취소 할 수는 없지만 이전에 제출 된 변경 사항을 다음 두 가지 방법으로 되돌릴 수 있습니다.

롤백 은 파일 또는 파일 세트를 지정된 변경 목록, 날짜 또는 개정으로 다시 복원합니다. 해당 시점 이후의 모든 변경 사항은 유지되지 않습니다. 취소는 지정된 변경 목록, 날짜 또는 개정에서 작성된 특정 변경 사항 제거하지만 사용자는 후속 개정에서 작성된 변경 사항을 유지할 수 있습니다.

자세한 내용은 https://www.perforce.com/perforce/r13.1/manuals/p4v/Working_with_changelists.html참조하십시오.


8

취소는 변경 사항을 복원하거나 취소합니다. 이를 수행하는 방식은 P4가 로컬 작업 공간에서 변경 목록 (기본 또는 새로운)의 변경 사항을 취소하는 것입니다. 그런 다음 다른 변경 목록과 마찬가지로이 백 아웃 변경 목록을 제출 / 커밋해야합니다. 두 번째 부분은 서버에서 변경 목록을 자동으로 철회하지 않기 때문에 중요합니다. 백 아웃 된 변경 목록을 제출해야합니다.

다른 사람들이 지적했듯이 롤백은 더 큰 힘을 가지고 있습니다-특정 날짜, 변경 목록 또는 개정 번호로 변경 사항을 복원 할 수 있습니다


4

롤백 ...은 롤백 할 폴더를 선택하라는 메시지를 표시합니다. 즉, 특정 폴더에서 작동하며 레이블 또는 변경 목록 또는 날짜로 롤백 할 수 있습니다. 취소는 특정 변경 목록의 파일에 대한 작업입니다.


4

Perforce 변경 목록을 스택 (데이터 구조의)과 비교하여 사용자에게 설명합니다.

철회하면 스택의 어느 위치에서나 하나의 항목이 제거됩니다.

롤백하면 스택 상단에서 n 개의 항목이 제거됩니다.


0

가장 간단하게 차이점은 복수 중 하나입니다.

  • 백 아웃은 (여부를 가장 최근의 여부) 단일 변경 목록 밖으로 백업합니다. 즉, 단일 변경 목록을 취소합니다.
  • 롤백 은 이전 변경 목록에 도달하기 위해 필요한만큼 변경 사항을 롤백 합니다. 즉, 여러 변경 목록을 취소합니다.

나는 어느 것이 어느 것인지 잊고 여러 번 찾아야 만했습니다. 이 문제를 해결하려면 여러 회전으로 롤백 한 다음 롤백 이 복수 라는 사실 이 어느 것이 어느 것인지 기억하는 데 도움이 되기를 바랍니다 . 취소 는 나에게 롤백 하는 것 보다 '복수 적은'소리가납니다 . 하나의 주차 공간에서 뒤로 물러선다고 상상해보십시오 .

따라서 니모닉은 다음과 같습니다.

  • 롤백 → 다중 회전
  • 백 아웃은 (A)의 철회 → 하나의 주차 공간

이게 도움이 되길 바란다!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.