2013-03-21 26 views
14

Tôi mới tham gia Perforce và, thành thật mà nói, tôi ghét nó. Tôi có khoảng 20 tệp trong thư mục c: \ workspaces \ perforce và tôi đã chọn tất cả chúng và nhấn phím xóa. Tất cả đều được đăng ký trước khi tôi xóa chúng. Tôi đã kéo tóc ra cố gắng tìm ra cách để đưa chúng trở lại (Perforce là sooooo unintuitive) nhưng không có gì mà đứng ra một n00b như tôi.
Làm cách nào để có được các bản chỉnh sửa mới nhất trở lại vào thư mục từ Perforce?Tôi đã xóa tất cả các tệp trong thư mục của mình. Làm thế nào tôi có thể lấy lại chúng?

Trả lời

18

Bạn cần thực hiện đồng bộ hóa lực.

Trên dòng lệnh:

$> p4 sync -f 

Trong GUI P4V:

  1. Nhấp chuột phải vào thư mục để cập nhật
  2. Chọn 'Get Revision'
  3. Trong hộp thoại, kiểm tra 'Buộc hoạt động'
  4. Nhấp vào 'Nhận bản sửa đổi'
9

Máy chủ lưu lượng truy cập theo dõi các tệp bạn đã kéo trong lần trước. Điều này được thực hiện sao cho, sync tiếp theo chỉ mang lại các tệp có thay đổi kể từ lần đồng bộ hóa cuối cùng, thay vì tất cả các tệp một lần nữa.

Để ghi đè hành vi này, bạn cần sử dụng tùy chọn -f.

Cờ -f buộc đồng bộ lại ngay cả khi ứng dụng đã có tệp và ghi đè mọi tệp có thể ghi. Cờ này không ảnh hưởng đến các tệp đang mở.

Nếu bạn đang sử dụng cho khách hàng dòng lệnh, bạn có thể chạy lệnh này từ thư mục mà bạn muốn đồng bộ hóa lên:

p4 sync -f ... 

Bạn cũng có thể muốn kiểm tra danh sách các opened file, kể từ sync -f sẽ không mang lại các thay đổi tương ứng với các tệp đó (ngay cả khi bạn đã xóa chúng).

Lệnh này sẽ liệt kê tất cả các file mở:

p4 opened ... 

Nếu bạn có bất kỳ tập tin được liệt kê trong danh sách trên, mà bạn đã xóa là tốt, bạn nên trở lại chúng trước khi chạy sync -f.

p4 revert <FILE1> <FILE2> 
p4 sync -f ... 

Nếu bạn đang sử dụng p4v, bạn có thể làm theo các bước được đề cập bởi dwinkle:

1. Right click the folder in your workspace 
2. Choose `Get Revision` in the context menu. 
3. Choose `Get Latest revision` 
4. Check `Force Operation (replace file even if you already have the revision specified) 
5. Click on `Get Revision` button to fetch the files. 

Để nhìn vào danh sách các tập tin đã mở sử dụng p4v, bạn sẽ phải nhìn vào danh sách các các danh sách thay đổi đang chờ xử lý. Bạn nên tìm kiếm trong danh sách thay đổi default, nếu bạn chưa đặt các tệp đó vào bất kỳ danh sách thay đổi bất chính nào.Nhấp chuột phải vào các tệp bạn thấy ở đó mà bạn đã xóa trước đó và chọn Revert.

1

Một thay thế:

p4 reconcile p4 revert //...

+0

Phiên bản GUI này là giải pháp tốt nhất cho tôi. Tôi đã nhấp chuột phải vào phiên bản gốc và điều chỉnh các xóa cho một người thay đổi đầu, sau đó quay trở lại danh sách thay đổi đó. –

4

nếu bạn có tập kiểm tra ra, và sau đó xóa. Bạn cần hoàn nguyên (p4 revert -a // ...) thư mục trước khi bạn nhận được lệnh mới nhất (p4 sync -f).

2

Nếu bạn không quan tâm đến các khách hàng cũ, một trong những giải pháp sẽ được kéo xuống một khách hàng mới:

p4 newclient 
p4 sync 

Nếu bạn muốn khách hàng để có cùng tên, bạn có thể làm một sync buộc như những người khác đã đề cập:

p4 sync -f 

Nếu bạn muốn khách hàng để có cùng tên, nhưng thư mục của bạn không còn được công nhận là một không gian làm việc p4, bạn sẽ cần phải xoá client và sau đó tạo lại nó.

p4 -c <client_name> client -d <client_name> 
p4 newclient 
0

Trong trường hợp của tôi, tôi đã thử mọi thứ và không thể khôi phục tất cả các tệp của mình, vì vậy tôi đã thử xóa chúng và sau đó tôi không thể lấy lại tất cả. Tôi khởi động lại máy tính của mình và thử nhiều giải pháp được tìm thấy trực tuyến. Cuối cùng, vấn đề của tôi đã được giải quyết bằng một hoặc tất cả những điều sau đây: nâng cấp lên ứng dụng P4V mới nhất, chạy ứng dụng với các quyền nâng cao và đi ăn trưa sau khi bắt buộc phải tải xuống mới nhất.

Nếu bạn lãng phí nửa ngày. Bạn có thể muốn thử ở trên.

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