2009-09-18 29 views
14

Những hệ thống kiểm soát phiên bản bạn muốn giới thiệu cho:Bazaar, Mercurial hoặc khác cho kiểm soát phiên bản người dùng duy nhất?

  • người dùng duy nhất
  • tìm kiếm đơn giản, dễ sử dụng
  • dự án đơn giản nói chung là nhỏ
  • làm việc trên cửa sổ
  • thường mã hóa python
  • không có máy chủ

Sử dụng sẽ tìm kiếm mã cũ hơn các tình huống phân nhánh phức tạp.

Từ các bài đăng tương tự khác, Bazaar và Mercurial có vẻ là hệ thống kiểm soát phiên bản được phân phối tốt nhất cho nhu cầu của tôi. Tôi hơi nghiêng về phía Bazaar vì nó có vẻ đơn giản hơn.

Khiếu nại chính tôi đọc về Baazar là nó chậm, nhưng tốc độ đã được cải thiện trong phiên bản 2, sẽ được phát hành vào mùa hè này. Phiên bản mới chưa được phát hành, nhưng có 2.0.0rc2.

Tôi tự hỏi nếu có bất kỳ điều gì đã thay đổi gần đây hoặc nếu có ai có bất kỳ cảm xúc mạnh mẽ nào về chủ đề này.

EDIT: Sau khi đọc câu trả lời và duyệt một số lựa chọn thay thế, tôi sẽ đi với Bazaar, ít nhất là cho thời điểm này. Đối với nhu cầu của tôi, các sản phẩm được đề cập có vẻ khá giống nhau. Bazaar có tài liệu hướng tới một nhà phát triển solo và có vẻ khá dễ sử dụng. Những người khác dường như nhắm vào các nhóm hoặc những người có máy chủ trung tâm. Các hệ thống khác có thể là tốt, nhưng tôi nghĩ bắt đầu sử dụng một cái gì đó quan trọng hơn là dành thời gian cố gắng tìm chương trình hoàn hảo.

Cảm ơn mọi người!

(nên tôi viết bài này như một chỉnh sửa, một câu trả lời hay comment?)

Trả lời

6

Bazaar rất tốt cho nhu cầu của bạn và tôi nghi ngờ bạn đã tìm thấy vấn đề về tốc độ với các dự án của mình. Bazaar có giao diện người dùng rất tốt đẹp được gọi là Bazaar Explorer mà tôi khuyên bạn nên sử dụng TortoiseBzr. (Bazaar Explorer đã được cài đặt vào bộ cài đặt chuẩn 2.0 ngay bây giờ.)

Tất nhiên nếu bạn chọn Mercurial bạn không mất nhiều.

Vì vậy, bạn nên kiểm tra cái khác và lựa chọn của mình. Mỗi zealot sẽ đề nghị bạn yêu thích của mình.

5

Nếu bạn là người dùng Windows, không có gì có thể đánh bại IMO TortoiseSVN về khả năng sử dụng và tính dễ sử dụng.

+4

+1. Không có máy chủ yêu cầu, quá. –

+7

Không yêu cầu máy chủ? Có lẽ tôi đã bỏ lỡ một cái gì đó nhưng theo như tôi biết SVN không yêu cầu một máy chủ để chạy không giống như hệ thống kiểm soát phiên bản phân phối (aka Bzr & Mercurial). –

+0

Tôi đồng ý với Martin. SVN yêu cầu máy chủ – exhuma

16

Nếu bạn chỉ là một nhà phát triển duy nhất làm việc trên các dự án nhỏ, mọi hệ thống kiểm soát phiên bản phải đủ nhanh.

Tôi là một nhà phát triển Mercurial bản thân mình và tất nhiên sẽ khuyên bạn nên :-) Tôi thích cách Mercurial có một khái niệm trung tâm: biểu đồ changeset. Biểu đồ nằm bên trong một kho lưu trữ (một bản sao). Bạn có thể có nhiều dòng phát triển trong cùng một bản sao. Điều này có thể ở dạng nhiều đầu, có thể được đánh dấu bằng bookmarks extension hoặc như các chi nhánh được đặt tên. Bạn cũng có thể sử dụng một số bản sao để giữ mọi thứ được phân tách, hoặc bạn có thể đi qua lại: dễ tách riêng một bản sao kết hợp (sử dụng hg clone -r REV để lấy một phần của biểu đồ sửa đổi). Xem này blog post để có hình ảnh đẹp.

Đối với Windows (và các nền tảng khác), bạn có TortoiseHg, cung cấp cho bạn giao diện đồ họa rất đẹp mắt. TortoiseHg cũng tích hợp với nhiều plugin tuyệt vời cho Mercurial, đặc biệt là record extension, cho phép bạn chọn các thay đổi riêng lẻ từ một tệp khi bạn cam kết. Bằng cách đó, bạn có thể chỉnh sửa một số tệp và sau đó cam kết những thay đổi đó dưới dạng một số thay đổi độc lập.

Cuối cùng, bạn cũng nên biết về Mercurial: The Definitive Guide, sách trực tuyến miễn phí về Mercurial.

+2

Hey, giữ dễ dàng! Nếu bạn không hiểu "khái niệm hài hước" của Bazaar thì điều đó không có nghĩa là bạn có thể đối xử với họ như một thứ gì đó xấu. – bialix

+0

Tôi đang sử dụng Mercurial cho bất kỳ thứ gì tôi cần để kiểm soát phiên bản. Nó là đơn giản, và TortoiseHG thực sự là một điều trị để làm việc với (IMHO) – edomaur

+0

ditto cho Mercurial. Tôi tìm thấy nó dễ dàng hơn để ấm hơn so với những người khác và tôi cũng sử dụng nó cho khá nhiều tất cả mọi thứ cần Version Control. Sử dụng dịch vụ được lưu trữ như Kiln cũng có nghĩa là sao lưu ngoại vi thưởng. –

3

Tôi đã sử dụng SVN, Git và Bzr khá rộng rãi trên các dự án khác nhau. Tôi hiện đang sử dụng Bzr trên một dự án người dùng duy nhất và nó rất dễ dàng để thiết lập và sử dụng. Không cần phải thiết lập một máy chủ và đi kèm với TortoiseBzr hoạt động tốt, nó có thể không phải là tính năng hoàn chỉnh như TortoiseSVN nhưng đối với một dự án một người bạn nên có mọi thứ bạn cần. Có một vài điều còn thiếu như khả năng sửa đổi thẻ trong trường hợp bạn cần phải sử dụng giao diện dòng lệnh. Tôi đã xem xét Mercurial khoảng một năm trước, nhưng tôi đã không sử dụng nó trong một tình huống thực tế, vì vậy tôi sẽ không thể so sánh. Tôi quyết định chống lại nó bởi vì TortoiseHG dường như không trưởng thành vào thời điểm đó, tôi hy vọng nó sẽ được cải thiện kể từ đó.

1

Tôi đã sử dụng Bazaar một thời gian và khá hài lòng với nó. Với tất cả sự cường điệu diễn ra vào khoảng git, tôi đã thử. Và mặc dù nó có những khái niệm khá phức tạp, tôi chỉ có thể nói rằng nó đáng để chuyển đổi. Bây giờ tôi sử dụng nó cho tất cả các dự án của tôi. Dù nhỏ thế nào đi nữa. Và tôi nghĩ rằng TortoiseGit đã trở nên đủ tốt để có thể sử dụng được.

tôi có thể thấy những điểm tốt sau về nó:

  • Đó là nhanh chóng
  • nhánh và sáp nhập là rất đơn giản, bạn thậm chí có thể nói nó là thú vị
  • Nó có lệnh sôi nổi tôi đã không nhìn thấy bất cứ nơi nào khác (f.ex .: stash and rebase)
  • Nó được thổi phồng. Do đó cộng đồng là khá tích cực và bạn có thể tìm thấy rất nhiều tài liệu trên nó
  • Bạn có thể lấy một bản sao của gitorious để quản lý dự án của bạn nhân

Một số điều tôi không thích lắm:

  • chi nhánh trưng bày tại gitk "cảm thấy" xa lạ với tôi
+0

Cũng giống như Mercurial, Git sử dụng giá trị băm SHA-1, chứ không phải MD5 (MD5 bị hỏng nặng và không nên sử dụng nữa). –

+1

Tôi đã sử dụng git khoảng 4 tháng tại công ty tôi đã làm việc tại (khoảng 1 năm trước). Vào thời điểm đó không có TortoiseGIT, vì vậy đó là tốt đẹp để xem. Tôi thấy Git hỗ trợ trên cửa sổ khá kém, nó không có cửa sổ chính thức hỗ trợ. Bạn phải tự xây dựng hoặc tải xuống từ trang web của bên thứ ba. Cũng có một lỗi khó chịu trong đó nếu một tệp đang được sử dụng bởi một quá trình khác (ví dụ: studio hình ảnh) trong khi GIT đang làm việc đó, bạn có thể bị hỏng trong một thời gian dài. Tôi khuyên bạn nên chống lại nó cho người dùng windows. –

+0

Ngoài ra, không giống như Git, Mercurial có một số sửa đổi địa phương cho mỗi changeset, do đó bạn không phải nhập số thập lục phân kỳ lạ để xác định các cam kết. –

0

tôi sử dụng git và nó hoạt động tuyệt vời đối với tôi. Tôi sử dụng msysgit trên Windows.

0

Tôi sẽ giới thiệu Git luôn. Đó là nhanh chóng, không cần máy chủ, phân nhánh và sáp nhập là tuyệt vời. Đối với Windows, bạn cần có được MsysGit.

Mercurial cũng rất tốt với giao diện dễ dàng hơn một chút cho người dùng.

2

Tôi khá thích darcs, nó sử dụng một cái gì đó gọi là lý thuyết vá đó là, như xa là tôi biết, duy nhất trong phiên bản phần mềm điều khiển.

+0

Tôi đã nghe (và đọc) rằng nó có một số vấn đề về hiệu suất và kích thước kho lưu trữ quan trọng nếu bạn vượt quá dự án nhỏ với lịch sử không quá dài. –

+0

Hầu hết các vấn đề này nên được gỡ bỏ với phiên bản 2. Mặc dù bạn có một cơ hội rất nhỏ để chạy vào một hoạt động thời gian theo hàm mũ. –

4

Chắc chắn Subversion ....Đó là miễn phí, rất dễ cài đặt và sử dụng, không yêu cầu máy chủ vì nó chỉ có thể truy cập hệ thống tệp cục bộ và bạn có thể tìm nạp và tải tài liệu và trợ giúp nếu bạn gặp khó khăn vì tôi nghĩ ở đó có nhiều người sử dụng SVN hơn bazaar hoặc git chẳng hạn ....

Bạn chỉ có thể tải TortoiseSVN (http://tortoisesvn.tigris.org/) vi bắt đầu sử dụng nó .... Không có gì khác là cần thiết để bắt đầu vì Tortoisesvn đã lật đổ được xây dựng- trong tôi tin rằng ...

+0

Wow, tôi đã có Rùa và không biết nó đơn giản như thế này để tạo ra một kho lưu trữ cục bộ! Cảm ơn, tôi sẽ tạo ra rất nhiều 'em bây giờ ... :-) –

4

Tôi đã thực hiện một số trò chơi với tất cả chúng.

Điều quan trọng đã thu hút tôi đến Bazaar là sự linh hoạt của nó.

Muốn vận hành ở chế độ tập trung (ala SVN)? Bạn có thể làm điều đó. Bạn muốn hoạt động ở chế độ phân phối (ala Mercurial hoặc git)? Bạn có thể làm điều đó.

Và đây là nơi nó trở nên tốt hơn: bạn có thể làm cả hai. Giả sử bạn đang làm việc với một anh chàng đến từ SVN và anh ta không thích khái niệm phân tán một chút. Khỏe. Hãy để anh ta làm việc trong chế độ tập trung trong khi phần còn lại của nhóm làm việc trong chế độ phân tán. Nếu anh ta rời khỏi kho lưu trữ trung tâm, anh ấy thậm chí có thể thực hiện thanh toán ngoại tuyến của mình và thực hiện cam kết ngoại tuyến trong khi anh ấy đi vắng. Sau đó, anh ta có thể cam kết tất cả khi anh ấy trở lại.

Trong khi một số hệ thống khác có cách để ước tính các mô hình khác nhau, thì dường như không có sự linh hoạt nào như là chợ.

+0

... và bạn cũng không thể làm điều đó với Mercurial và Git ... tại sao, một lần nữa? Làm việc trong chế độ tập trung là nhiều hơn một quy ước và thuận tiện được cung cấp bởi tất cả chúng. – 0xC0000022L

+0

@ 0xC0000022L Câu trả lời của tôi đã được viết cách đây 4 năm, khi git đi trước một chút về mặt tính phổ biến, Mercurial đứng thứ hai, và Bazaar hơi muộn hơn hai người kia. Tuy nhiên, họ đều là những lựa chọn hợp lý. Tuy nhiên, trong thế giới ngày nay, nó không còn là một cuộc thi nữa. Git là phổ biến nhất cho đến nay, Mercurial là một lựa chọn khác, và hỗ trợ Bazaar đã bị ngưng. – wadesworld

+0

có, nhưng bây giờ hoặc sau đó bạn có thể làm những việc này với tất cả chúng. Tôi không nghĩ rằng "một số hệ thống khác có cách để gần đúng các mô hình khác nhau", nó có công bằng không. Nhưng dù bằng cách nào, không có lý do gì để downvote cho tôi, vì vậy tôi chỉ đơn giản là nhận xét. – 0xC0000022L

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