2013-02-13 7 views
1

오래 전부터 보류 된 Perforce 변경 목록에 오래된 shelved 파일이 있습니다. 그 사람들이 내 공간을 오염시키고 있기 때문에 그 변화 목록을 없애고 싶습니다.하지만 언젠가는 필요할 때를 대비하여 모든 것을 잃고 싶지 않기 때문에 백업이 필요합니다.Perforce : 보관 된 파일을 작업 공간에서 백업으로 이동

쉘리스트 파일을 변경 목록에서 파일 시스템의 어딘가에 옮길 방법이 있습니까?

P4V에서 Windows 탐색기로 shelved 파일을 끌어서 놓는 기능이 작동하지 않습니다. 명령 줄 도구 p4 unshelve에는 이러한 옵션이없는 것 같습니다. 또한 파일을 백업하기 전에 먼저 파일을 unshelving하지 않는 것이 좋을 것입니다. 이러한 파일이 이미 수정 사항과 함께 체크 아웃되어 있다면 추가로 골칫거리가 될 수 있습니다.

편집

답변을 읽는 것은 나 안전 변경 목록의이 종류를 유지하고 실제로 원하는 것을 실현한다, 그러나 멀리보기에서 (즉, 멀리 평소 작업 공간에서). 내 파일 시스템이나 다른 곳에 있다면 상관 없다. 그래서 내 질문은 실제로 :

백업을 위해 작업 영역에서 멀리 떨어진 파일을 이동하는 방법이 있습니까?

답변

5

윌리엄스의 게시물을 확대하면 다른 작업 공간을 만들고 동기화하지 않고 쉘브 변경 목록을 저장하는 것이 좋습니다.

이렇게하려면 "연결"메뉴에서 "새 작업 영역 만들기"를 선택하십시오. "새 작업 공간으로 즉시 전환"의 선택을 취소하십시오. 이름을 현재 작업 공간과 동일하게 만들고 "-shelf"와 같은 접미사를 추가하십시오. 모든 루트 경로가 수행하면 필요하지 않습니다. 이제 "놓기"를 원하는 변경 목록을 선택하고 마우스 오른쪽 단추로 클릭 한 다음 "소유권 변경"을 선택하고 새 작업 공간 이름을 입력하십시오. 그러면 새 작업 공간으로 전송되며 현재 작업 공간은 좋을 것입니다. 잡동사니 그릇.

"보류 중"탭의 상단에서 필터를 확장하고 작업 공간 라인의 작은 원 X를 클릭하면 PERFORCE가 모든 변경 목록을 보여줍니다 현재 작업 공간을 찾아보고 제거 할 수 있습니다.

PERFORCE 서버는 백업에 가장 적합한 장소입니다. 퍼 포스는 각 보관 된 파일의 기본 개정판을 추적합니다. 이동하면 정보가 손실되어 나중에 통합하기가 더 어려워 질 수 있습니다.

+0

그건 분명히 가장 쉽고 쉬운 해결책입니다. 잠시 사용하다가 어떤 단점도 보지 못했습니다. –

+0

이 작업은 훌륭했습니다. 한 단계 더 수행해야했습니다. 제 환경에는 나뭇 가지가 많이 있습니다. 새로운 작업 공간을 처음 만들었을 때 "클라이언트 사양의 오류 '클라이언트 검사'검증에 실패했습니다. 클라이언트 사양의이 매핑이 너무 큽니다."새 작업 영역 창에서 이동해야했습니다. 해당 분기에서 Create Mappings twisty, right mouse를 선택하고 Include Files를 선택하십시오 (또한 최상위 레벨 "Depot"라인을 지워야했습니다). – Chad

2

적절한 매핑과 루트가있는 임시 작업 영역을 만들어 파일을 끝내고 싶은 위치에 놓은 다음 해당 작업 영역으로 전환하고 그 위치에서 벗어납니다. 그런 식으로 갈등은 없을 것입니다.

2

소년, 나는 그들을 서버에 두는 것이 위대한 장기 보관 장소라고 생각합니다. 나는 그 선반이 "내 공간을 오염시킨다"는 것을 알지 못한다. 서버에 보관하면 내가 녹음하고 싶은 실험 작업을 저장할 수있는 깨끗한 방법 인 것처럼 보이지만 제출할 준비가되지 않은 것 같습니다.

때로는 선반을 만들기보다는 서버에서 별도의 분기를 만듭니다. 내 선반에있는 파일 만 포함하는 스파 스 지점이 될 수 있습니다. 그런 다음 쉘브 파일을 해당 스파 스 지점에 제출합니다.

어느 쪽이든, 내 워크 스테이션의 임의의 폴더보다 서버에서 부분적으로 완료된 작업을 유지하는 편이 낫습니다.

+0

나는이 지점 솔루션과 같이 오래 전에 선반에있는 변경 목록을 안전하게 유지하면서도보기에 멀리 떨어져있게하는 좋은 방법이라고 생각합니다. 수락하기 전에 조금 기다려야합니다. 다른 좋은 대답이 튀어 나오는 경우를 대비하여. –

3

당신은 당신의 선반에 변경 집합에서 패치 파일을 생성하고 로컬 패치 파일을 저장할 수 :

p4 describe -S -du CHANGE > CHANGE.patch 

을 패치를 다시 적용해야하는 경우, 억지로가 사용하는 파일 마커를 좋아하지 않습니다 GNU patch 프로그램, 어떤는 다음과 같다 :

==== //depot/path/file#revision (type) ==== 

하지만 당신은에 그 마사지하는 스크립트를 작성할 수

+++ //depot/path/file 

(그리고 파일을 지정된 개정판에 먼저 동기화 할 수도 있습니다).

p4 describe 슬프게도 추가되거나 삭제 된 파일에 diff가 표시되지 않으므로 편집 된 파일에만 적용됩니다.