2008-08-25 21 views
6

Cửa hàng dev của chúng tôi hiện đang sử dụng Visual SourceSafe. Chúng ta đều biết làm thế nào mà có thể kết thúc (tồi tệ), vì vậy chúng tôi đang điều tra các hệ thống khác. Đầu tiên là Perforce. Có ai có kinh nghiệm với việc sử dụng nó và tích hợp của nó vào Visual Studio (2003/2005/2008)? Nó có tốt như bất kỳ thứ gì khác, hay nó khá chắc chắn với các tính năng tốt, tương đối?Nguồn lực trong một Cửa hàng Microsoft

Trả lời

12

Tôi đã sử dụng Perforce tại 3 công việc cuối cùng của mình (công việc hiện tại của tôi là sử dụng Subversion, mà tôi không thích gần như nhiều.) Tôi là một fan hâm mộ lớn của Perforce, và chuyển từ SourceSafe nó sẽ có vẻ như Niết Bàn. Chỉ cần kiểm tra nguyên tử sẽ là một sự thúc đẩy lớn cho công ty của bạn. Nếu không, Perforce nhanh, nó có các công cụ tốt và quy trình làm việc rất đơn giản để thực hiện những việc như kết hợp và tích hợp. Tôi hết lòng giới thiệu nó. Nó có thể không hoàn toàn mới và hào nhoáng như VCS phân phối mới nhất, nhưng thành thật mà nói, tôi thích mô hình máy khách/máy chủ cho tốc độ của nó, đặc biệt nếu bạn làm việc với những người ở các quốc gia khác có thể có kết nối chậm với bạn.

Tích hợp Visual Studio khá tốt, nhưng có một số vấn đề khó chịu. Nếu bạn chạy một máy khách Perforce khác cùng một lúc (như P4V), nó rất kém trong việc giữ các thay đổi từ máy khách khác đồng bộ về việc hiển thị những tệp nào hiện được kiểm tra vào/ra. Bạn thường phải tắt Visual Studio và tải lại dự án nếu bạn muốn đồng bộ hóa chính xác. Tuy nhiên, trạng thái đồng bộ hóa thực sự không ảnh hưởng đến checkins/checkouts/update từ hoạt động chính xác, nó chỉ có nghĩa là bạn có thể bị lừa để suy nghĩ điều gì đó ở trạng thái khác với thực tế là trong khi bạn đang ở trong Visual Studio. Ứng dụng khách Perforce sẽ luôn hiển thị trạng thái chính xác khi chúng đồng bộ liên tục với cơ sở dữ liệu.

Ngoài ra, đôi khi bạn sẽ thấy bạn cần phải làm việc "ngoại tuyến" (không được kết nối với cơ sở dữ liệu Perforce vì lý do nào đó) và khi bạn tải lại dự án vào lần tiếp theo, liên kết Perforce của bạn có thể bị mất và bạn ' sẽ phải rebind từng dự án riêng lẻ. Nếu bạn làm việc với một giải pháp có chứa nhiều dự án, điều này có thể là một nỗi đau lớn trong cuộc đấu. Tương tự như vậy khi bạn lần đầu tiên kiểm tra một giải pháp, ràng buộc với Perforce là cần thiết trước khi sự tích hợp xảy ra.

0

Tôi có kinh nghiệm sử dụng một dẫn xuất Perforce.

Dường như khó quản lý từ góc nhìn của quản trị viên, nhưng tốt nhất là sử dụng từ góc nhìn của lập trình viên.

Sau đó, một lần nữa, tôi lớn về điều khiển phiên bản dòng lệnh nên không thể nói cho tích hợp VS.

-1

Tôi chưa sử dụng Perforce, nhưng tôi đã tìm thấy việc chuyển sang Team Foundation Server như một trong những lựa chọn tốt nhất khi làm việc với Visual Studio.

1

Perforce hoạt động tốt với Visual Studio, bao gồm chế độ "ngoại tuyến" trong đó VS sẽ làm cho tệp cục bộ của bạn có thể ghi và đồng bộ hóa với máy chủ sau.

Tôi có xu hướng sử dụng giao diện Perforce cho nhiều thao tác (đệ trình, khác biệt) chỉ vì nó nhanh hơn/tốt hơn, nhưng quá trình kiểm tra IDE ra là liền mạch.

Lực lượng trong kinh nghiệm của tôi là đá chắc chắn và sản phẩm điều khiển phiên bản hỗn hợp (mã + dữ liệu) tốt nhất nếu chi phí không phải là yếu tố. Niềm đam mê lớn nhất của tôi là hiệu suất của máy chủ trong Windows không có nơi gần tốt như dưới * nix và nếu bạn đang sử dụng máy chủ * nix, họ không chính thức hỗ trợ tùy chọn cho tên tệp phân biệt chữ hoa chữ thường (có nghĩa là bạn có thể từ chối hỗ trợ liên quan đến lỗi hệ thống tệp hoặc thiết lập trình kích hoạt để ngăn mọi người thêm foo.cpp nếu Foo.cpp tồn tại).

Tác phẩm chính khác của tôi là đối với một số thao tác phổ biến, bạn phải hoàn nguyên về dòng lệnh, thường là các hàm đường ống cùng nhau. Một ví dụ sẽ nhận được một danh sách các tập tin trong một thư mục không thuộc quyền kiểm soát nguồn.

Cả hai vấn đề này phản ánh nhiều hơn về công ty so với sản phẩm. IMO Perforce biết họ đang đứng đầu thị trường và do đó không thấy lý do gì để đầu tư vào việc sửa chữa những thứ như thế này.

4

Chúng tôi đã sử dụng Perforce hơn một năm trước khi chuyển sang SVN gần đây. Trong khi tôi đã làm như các công cụ (ví dụ, khác biệt thị giác và hợp nhất và các bit quản trị), chúng tôi đã có một số vấn đề thực sự mệt mỏi với ràng buộc, như Chris đề cập đến; nếu không, tích hợp VS là thỏa đáng. Nếu bất cứ điều gì, tôi thấy làm việc với SVN dễ dàng hơn và trực quan hơn Perforce. TortoiseSVN (phần mở rộng vỏ Windows Explorer) là tuyệt vời, và chúng tôi đã mua một vài giấy phép VisualSVN để tích hợp VS. Trái ngược với Perforce, VisualSVN không hoạt động với giao diện MS SCC, mà là trực tiếp với SVN client, mà cá nhân tôi thấy là một lợi thế. Perforce không hỗ trợ nhiều hệ điều hành khác, nhưng các nhà phát triển không phải Windows của chúng tôi cũng cảm thấy thoải mái hơn với SVN. Nếu tôi phải chọn lại, tôi sẽ gắn bó với SVN.

3

Sourcegear Vault là SCM tốt nhất để di chuyển người dùng VSS sang.

Và giá rẻ của nó.

0

Tôi đã sử dụng cá nhân và quản lý một số nhóm trong vài năm, những người đã và đang thực hiện Perforce & Visual Studio. Nó hoạt động hoàn hảo. Có thể có một vài ràng buộc/rebinding gotchas, nhưng nói chung là dễ dàng để sắp xếp - Perforce knowledgebase và/hoặc danh sách gửi thư là một nguồn thông tin tốt.

Không bao giờ gặp bất kỳ sự cố nào khi sử dụng dòng lệnh, ứng dụng khách trực quan và VS IDe cùng lúc - làm mới bình thường hoạt động tốt.

0

Chúng tôi sử dụng nguồn lực rộng rãi trong công ty, bao gồm phân nhánh cho các dự án rất lớn, phát triển trên Sun Solaris và Windows và hơn 120 người dùng.

Rất nhanh và GUI của Windows (P4V) rất đẹp. Việc tích hợp Explorer là chấp nhận được. Tôi đã vô hiệu hóa tích hợp VS và sử dụng các macro (ví dụ: p4 edit) để chỉnh sửa/hoàn nguyên các tệp khác. Việc tích hợp VS là cực kỳ khó chịu cho các dự án lớn (giải pháp của chúng tôi có> 130 dự án), nhưng có thể làm việc cho các dự án nhỏ hơn.

4

Thật khó để gọi $ 900 cho mỗi người dùng một tính năng tốt.

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