2014-06-16 16 views
9

Tôi có hai không gian làm việc Perforce trên máy tính của tôi, một tại số c:\dev và thứ hai tại c:\code. Khi tôi chạy p4 status trong c:\code tôi nhận được một thông báo lỗiTrạng thái p4 "Đường dẫn không nằm trong thư mục gốc của khách hàng"

Path 'c:\code\...' is not under client's root 'c:\dev' 

Cùng xảy ra cho p4 reconcile. Làm thế nào tôi có thể nhận được các lệnh để làm việc? Rõ ràng nó đang cố gắng chạy lệnh chống lại repo sai.

+2

Điều này sẽ hữu ích. http://stackoverflow.com/questions/7633332/p4-change-workspace-for-client – James

Trả lời

13

Nếu bạn không đặt rõ ràng biến môi trường P4CLIENT, Perforce sử dụng không gian làm việc mặc định. Làm thế nào nó quyết định không gian làm việc nào là mặc định, tôi không biết. Dù sao, nó đã được mặc định cho người có gốc bạn đã ánh xạ tới C:\dev. Bạn cần chuyển sang không gian làm việc code (hoặc bất kỳ tên thực tế nào của nó). Tại dòng lệnh gõ lệnh sau để chuyển đổi không gian làm việc:

p4 set P4CLIENT=[client name]

Tất nhiên, bạn sẽ thay thế "[Tên khách hàng]" với tên của các không gian làm việc có gốc bạn đã ánh xạ tới C:\code.

+0

Hoàn hảo! Đây là một giải pháp sạch. – GuruC

+0

Điều này vẫn nhận được lỗi tương tự sau khi cài đặt ứng dụng khách. Đường dẫn '/ home/stevek/...' không nằm trong thư mục gốc của máy khách '/ home/stevek/Perforce/steve_SIA_development'. Không có tệp nào để đối chiếu. Đặt mỏ trong bash_profile. – Winnemucca

4

Mở rộng một chút về câu trả lời của con quạ. Theo mặc định, nếu bạn không đặt P4CLIENT, perforce sẽ lấy tên máy của bạn làm tên máy khách mặc định. Vì vậy, nếu bạn muốn sử dụng một ứng dụng khách khác, bạn phải sử dụng p4 set P4CLIENT=[client name], sẽ đặt nó cho mọi trường hợp của p4 bạn chạy, bất kể bạn đang ở cửa sổ lệnh nào. Bạn cũng có thể thực hiện set P4CLIENT=[client name] trên dòng lệnh, sẽ chỉ hợp lệ trong cửa sổ lệnh mà bạn đang chạy.

Ngoài ra, bạn có thể sử dụng p4 -c [client_name] <command> vì -c là tùy chọn toàn cục, bạn có thể cung cấp cho tất cả các lệnh p4.

+0

chúng ta có thể đặt P4CLIENT trong bash_profile của chúng ta đúng không? Tôi đang đặt khách hàng của mình ở đó nhưng vẫn gặp phải lỗi này. – Winnemucca

Các vấn đề liên quan