2010-07-11 18 views
5

Có vẻ như khá khó để tìm thấy các tài liệu tham khảo tốt về ưu và khuyết điểm của các hệ thống kiểm soát Phiên bản này.Bạn có biết giấy chuyên nghiệp/con tốt trên hệ thống điều khiển phiên bản (git/mercurial/svn/cvs) không?

Nếu ai đó có thể tạo một tờ giấy ngắn gọn và gọn gàng về nó, hãy phản chiếu nó và đăng nó ở đây, tôi nghĩ rất nhiều người sẽ ít bối rối hơn.

Tôi nên sử dụng hệ thống kiểm soát phiên bản nào? Tôi nghĩ nó phụ thuộc vào dự án và số lượng người làm việc trên nó. Tuy nhiên có một số sự kiện thường được chấp nhận, ví dụ: Git là nhanh nhất, CVS ổn định và được kiểm tra, SVN rất đơn giản và Mercurial có vẻ thân thiện với Windows hơn.

Hơn nữa, bài báo phải trình bày bằng chứng, liên kết đến điểm chuẩn và giải thích cho từng câu.

Tôi đã viết trên stackoverflow vì hầu hết độc giả ở đây nên có kinh nghiệm lập trình và biết nơi để yêu cầu để có được đóng góp thích hợp HOẶC thậm chí viết giấy (đó sẽ là tuyệt vời). Lưu ý: Câu hỏi này không phải là về giá trị tương đối của một công cụ trên một công cụ khác (có nhiều bài viết về các chủ đề đó), nhưng về tiêu chí khách quan có thể được sử dụng để phân biệt chúng và được sử dụng để chọn cho dự án của bạn .

+4

SO không phải là một hội thảo kỹ thuật thực sự; chúng tôi không làm "giấy tờ", chúng tôi trả lời. – Amber

+0

Tôi chỉ cố gắng "giảm bớt" khía cạnh gây tranh cãi của câu hỏi - hợp pháp của bạn. Nếu bạn nghĩ rằng tôi đã không làm như vậy, và rằng tôi đã thay đổi nó quá nhiều, xin vui lòng trở lại phiên bản trước đó hoặc chỉnh sửa nó một lần nữa. – VonC

+0

Amber: Điều này đúng, tôi đã lạm dụng SO, tha thứ cho tôi. VonC: Vâng, bạn đã thay đổi một chi tiết nhưng bạn đã thực hiện một sai lầm, tôi đã không ngầm ca ngợi cửa sổ, nó chỉ là một nhấp nháy khó chịu từ một người dùng BSD để Linus. Tuy nhiên tôi không nhớ, phiên bản sửa đổi của bạn là tốt và phù hợp hơn. Cảm ơn bạn. – benjamin

Trả lời

3

DVCSAnalysis từ Google là khởi đầu tốt.
(Vâng, Scott Chacon, Git championone of the guys behind GitHub, không đồng ý trong các ý kiến:

Phân tích này đã cũ, và trên thực tế rất hiệu lực khi nó đã được đăng Xem tôi comments on ycombinator about it
. Ý kiến ​​của tôi là Git và Mercurial là cấp trên gần như mọi cách để SVN/CVS - Tôi nghĩ rằng hầu như mọi nhà phát triển đã sử dụng cả hai hệ thống theo bất kỳ cách nào có ý nghĩa đều đồng ý với nhau.

Vì Git/Hg, chúng phần lớn có thể so sánh và hoặc là một lựa chọn tốt, mặc dù Git dường như có một chút dấu ấn et chia sẻ lợi thế, FWIW.

Bất kỳ nguồn/tham chiếu nào về thị phần đó, Scott?
Có lẽ số lượng repos/người dùng được khai báo trong các trang web cộng tác mã hóa xã hội?

)

Bên cạnh đó, tôi đã viết một số bài viết tổng quát về chủ đề này:

Các câu trả lời SO đó có thể không đủ "công cụ cụ thể", nhưng ít nhất có thể chỉ cho bạn các tính năng có liên quan mà mỗi lớp của hệ thống Phiên bản đó cung cấp.

Trên mặt trận điểm chuẩn, bạn có interesting question from Jakub Narębski trên điểm chuẩn mạng, cũng như his answer for Git.
Điều đó có thể quá "Git-centric", nhưng cũng có thể được sử dụng để đặt câu hỏi phù hợp khi quyết định loại công cụ phiên bản nào bạn muốn cho dự án của mình.

+0

DVCSAnalysis là loại giấy tôi đang tìm kiếm, phân tích rất tốt từ google. – benjamin

+0

Phân tích này đã lỗi thời và thực tế đã lỗi thời khi được đăng. Xem ý kiến ​​của tôi về nó ở đây: http://news.ycombinator.com/item?id=577976 Ý kiến ​​của tôi là Git và Mercurial là cấp trên gần như mọi cách để SVN/CVS - Tôi nghĩ rằng hầu hết các nhà phát triển đã sử dụng cả hai hệ thống trong bất kỳ cách có ý nghĩa sẽ đồng ý. Đối với Git/Hg, chúng phần lớn có thể so sánh và sẽ là một lựa chọn tốt, mặc dù Git dường như có một chút lợi thế về thị phần, FWIW. –

+0

@Scott, cảm ơn bạn đã phản hồi. Tôi đã tích hợp nó vào câu trả lời của tôi. ** Nhưng **: 1/liên quan đến Windows, [hỗ trợ] của nó (http://code.google.com/p/msysgit/updates/list) nó vẫn [run rẩy nhất, xem câu trả lời SO này] (http://stackoverflow.com/questions/1704565#1704687). 2/Và tập tin thanh toán git so với chi nhánh vẫn còn rất nhiều người (xem [câu trả lời SO này] (http://stackoverflow.com/questions/2961240#2961348)) – VonC

4

Khi nói đến nó, "vcs phù hợp với tôi" là câu hỏi chủ quan phụ thuộc rất nhiều vào các thông số về nhu cầu công việc của bạn, nhu cầu dự án của bạn và phong cách chung của nhóm của bạn.

Nếu bạn đang tìm kiếm để biết chi tiết về cách thức các tính năng thực nghiệm của mỗi VCS so sánh, hãy nhìn vào các bảng xếp hạng như sau:

http://en.wikipedia.org/wiki/Comparison_of_revision_control_software

Thật sự mặc dù, bất cứ điều gì ngoài đó sẽ là một ý kiến ​​chủ quan - ngay cả khi bạn làm thử nghiệm thực nghiệm, tốt nhất bạn sẽ nhận được là một tập hợp các so sánh khác nhau chỉ ra rằng một VCS vượt trội trong một khu vực nhất định và một VCS khác trong một khu vực khác. Làm thế nào bạn xếp hạng các khu vực về tầm quan trọng là tùy thuộc vào bạn.

+0

Liên kết chung tốt. +1 – VonC

+0

Đó là một nơi tốt để bắt đầu. – benjamin

0

Nếu bạn thích để làm quen với Git, Linus Torvalds TechTalk tại Google là rất tốt 1. Đó là (tất nhiên) rất chuyên nghiệp git và chống lại bất cứ điều gì khác, nhưng nó là thú vị để xem.

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