2017-09-12 4 views

답변

2

PERFORCE 서버에 연결 한 경우 매우 간단합니다. p4 where //... 또는 p4 client -o과 같은 명령을 실행하여 현재 클라이언트 작업 공간과 연관된 저장소를보십시오.

PERFORCE 서버에 연결되어 있지만 해당 연결 설정에 현재 디렉토리와 관련된 작업 공간 이름이 포함되어 있지 않은 경우 명령을 사용하고 Host 값을 다음과 일치시켜야합니다. 클라이언트 호스트 이름을 입력 한 다음 디렉토리와 일치하는 값인 Root을 찾으십시오. 일치하는 항목이 여러 개있을 수도 있습니다. 사람들은 때로는 Host 값 (모든 호스트에서 사용할 수 있도록 허용) 및/또는 null Root 값 (모든 디렉토리를 매핑 할 수 있음)이없는 클라이언트를 만드는 것과 같은 작업을 수행합니다.

PERFORCE 서버의 주소를 모르고 환경에 설정되어 있지 않은 경우 운이 좋지 않을 수 있습니다. PERFORCE 명령은 시스템 환경, 레지스트리, P4CONFIG 파일 등에서 P4PORT 설정을 자동으로 선택하지만 주어진 PERFORCE 클라이언트 시스템이 이러한 메커니즘 중 하나를 통해 연결을 설정한다는 보장은 없습니다 (대부분의 경우 어떤 경우에는 누군가가글로벌 플래그를 통해 모든 명령에 대해 P4PORT를 지정할 수 있습니다.


스크립팅 퍼포 유효한 P4PORT/P4USER/P4CLIENT 설정을 포함하는 올바르게 구성 환경을 가정하고, 사용자가 그것들을 구비하지 않은 경우 아웃 에러 일반적으로 합리적인 명령

. 사용자가 P4 CLI를 사용하는 셸에서 실행되는 스크립트는 P4V에서 "사용자 지정 도구"로 실행되는 스크립트처럼 올바르게 구성된 환경을 이미 갖습니다.

+0

질문은 내 [이전 질문] (https://stackoverflow.com/questions/46156741/how-to-detect-if-a-perforce-session-is-opened?noredirect=1#comment79302379_46156741)과 관련이 있습니다. . 실행 된 스크립트는 주 폴더보다 낮은 두 개의 폴더라는 것을 알고 있습니다. 그래서 나는 작업 공간 루트 경로를 알고 있지만 이제는 루트 경로에서 모든 파일 버전을 수집하려고합니다. 그래서 작업 공간의 저장소를 찾은 다음 저장소에서'p4 files \\ depot \ ...'을 실행하여 정보를 수집하려고했습니다. –

+1

'p4 files // CLIENTNAME/...'또는'p4 files D : \ workspace \ ...'를 실행하지 않는 이유는 무엇입니까? 다시 말하지만, 이것은 당신이 이미 유효한 연결 설정을 가지고 있다고 가정합니다 (당신이 자신이 운영하는 스크립트인지 또는 임의로 잘못 설정된 클라이언트 환경에 대처할 수 있어야하는지 여부를 나타내지는 않습니다). 이전 질문에서 제안했듯이 P4V에서 실행하는 경우이 도구를 사용자 지정 도구로 실행하고 싶습니다. 그러면 환경을 설정할 수 있기 때문입니다. –

+0

이전에 시도했지만'로컬 파일에 액세스하려면 'station_name'클라이언트를 만들어야합니다 .' –