2009-05-06 36 views
6

Tôi đang tìm một giải pháp kiểm soát nguồn tốt. Dưới đây là các yêu cầu:Điều khiển nguồn nào chúng tôi nên sử dụng

  1. Phải có GUI hoặc có trình cắm GUI có sẵn.
  2. Phải miễn phí.
  3. Phải hoạt động với HTTP.

Bạn sẽ chọn kiểm soát nguồn nào?

BỐI CẢNH

nhóm phát triển Net của chúng tôi là một phần của một công ty mẹ lớn. Chúng tôi đang trong quá trình mua lại VS Team System, tuy nhiên quan liêu của một công ty lớn di chuyển chậm và có thể là vài tháng trước khi chúng tôi có máy chủ Team System và chạy. Trong khi đó, chúng tôi có một dự án lớn sẽ được thuê ngoài cho một nhà cung cấp ở Ấn Độ. Trong quá khứ, quá trình nhóm của chúng tôi đã được một cái gì đó như thế này: 1) xác định các yêu cầu, 2) để cho đội Ấn Độ tạo ra giải pháp, và 3) nhận được giải pháp trở lại từ nhà cung cấp một tháng sau đó.

Chúng tôi đang tìm cách tiếp cận có kỷ luật hơn và Hệ thống nhóm là giải pháp lâu dài của chúng tôi, tuy nhiên tôi muốn sử dụng một cái gì đó ngay bây giờ thay vì không có gì.

Dưới đây là một số suy nghĩ của tôi:

  1. Source Safe là một không-đi, vì các vấn đề ổn định.
  2. Dễ sử dụng quan trọng hơn các tính năng nâng cao, như phân nhánh và tôi thực sự muốn sử dụng GUI so với các dòng lệnh.
  3. Truy cập HTTP là điều bắt buộc, vì nhóm phát triển sẽ ở xa.

Các thông tin khác như một theo dõi thông tin phản hồi cho đến nay

Chúng ta cần một giải pháp miễn phí, không phải vì chúng ta không thể đủ khả năng đó, nhưng vì chính sách thu mua của công ty của công ty sẽ trì hoãn nhận nó. Miễn phí cho phép chúng tôi cài đặt bất cứ lúc nào. Tôi cho rằng nếu nó đủ rẻ, tôi có thể trả tiền từ túi của mình, nhưng nó sẽ phải khá rẻ.

cuối cùng

Đáng buồn thay, chúng tôi đã không kết thúc sử dụng bất kỳ các khuyến nghị. Cuối cùng chúng tôi đã có được giấy phép TFS, tuy nhiên chúng tôi không dự kiến ​​sẽ có giải phóng mặt bằng để sử dụng máy chủ cho đến năm sau. Trong thời gian đó, nhóm ngoài khơi được tải lên các tệp zip lên một máy chủ FTP. Ugggghh! Tại sao thật khó để thuyết phục các công ty lớn rằng việc sử dụng các giải pháp không chuẩn (chẳng hạn như GIT) thay vì chờ các tháng (hoặc nhiều năm) khi họ cố gắng quyết định mua hay không (trong trường hợp này TFS) là đáng giá.

+0

Bạn có ý gì khi truy cập HTTP? Bạn có nghĩa là: 1) Bạn muốn có thể đăng ký và kiểm tra mã trên mạng bằng cách sử dụng các cổng HTTP hoặc 2) Bạn muốn duyệt qua mã nguồn trong cửa sổ trình duyệt web? – Eyal

+0

Câu hỏi hay. Nó sẽ là thích hợp hơn để có thể kiểm tra trong và ngoài thông qua HTTP, bởi vì điều đó sẽ cho phép chúng tôi thiết lập và duy trì máy chủ ở đây và cho phép các nhà cung cấp để kiểm tra từ xa. Mặc dù vậy, một giải pháp chỉ cung cấp 2) vẫn sẽ là một cải tiến so với những gì chúng tôi có ngày hôm nay. – John

+0

Thành thật mà nói, tôi không biết một SCM thương mại nào có lợi thế hơn so với những người tự do, và những cái tôi đã cố gắng làm việc với dường như có một số lợi thế * dis *. –

Trả lời

25

Tôi khuyên bạn nên SubversionTortoiseSVN. Ngay cả các documentation cho Subversion là miễn phí.

Chỉnh sửa để thêm: Tôi cũng khuyên bạn nên VisualSVN Server để thiết lập kho lưu trữ SVN của bạn. Các thiết lập là một snap và nó được như vậy rắc rối miễn phí Tôi đã phải đi tìm để xem những gì nó được gọi là bởi vì tôi đã không phải chạm vào nó một lần kể từ khi thiết lập ban đầu.

+0

Subversion là straighforward, khá dễ sử dụng và hầu hết tất cả, rất nhiều người sử dụng nó để có tài liệu rộng lớn có sẵn trực tuyến. Ngoài ra, có một số trình khách GUI khác nhau và các trình cắm thêm cho hầu hết các IDE lớn hơn (ví dụ như Visual Studio). –

+0

Subversion là tiêu chuẩn thực tế ... những ngày này. Thật tuyệt vời. Trong trường hợp bạn đang sử dụng Windows, hãy cảnh báo rằng tên tệp Subversion phân biệt chữ hoa chữ thường. Dù sao, SVN rất dễ sử dụng và cũng yêu. –

10

Suy nghĩ về hệ thống phân phối: darcs, git hoặc mercurial. Họ đều có những người theo dõi của họ, nhưng họ hoạt động rất giống nhau. darcs có thể mất một thời gian dài để xây dựng, bởi vì nó được viết bằng Haskell, và cuối cùng bạn cần phải xây dựng Haskell trước. Mercurial là dựa trên python, dễ hack và mở rộng. Và dĩ nhiên git là những gì được sử dụng cho Linux, rất phổ biến, rất nhiều công cụ.

Subversion là, tôi nghĩ, khá nhiều đường cơ sở của SCM hiện đại; nó cũng sẽ là một lựa chọn tốt, nhưng nó buộc bạn phải có một máy chủ trung tâm cố định; hoặc bạn, hoặc các đại học Ấn Độ của bạn, sẽ phải kiểm tra và cam kết trên một đường ống dài.

+0

Tôi rất muốn biết điều gì đã xảy ra. –

+1

Tôi thích cách câu trả lời này cung cấp nhiều hơn một giải pháp thay thế và thúc đẩy mỗi sự lựa chọn với ưu và nhược điểm thay vì cung cấp một câu trả lời rõ ràng có thể hoặc không thể là những gì người hỏi đang tìm kiếm. Bình chọn cho rằng –

+0

Có lẽ vì bạn đã không đặt git đầu tiên trong danh sách. Blasphemer! –

0

Bạn đã thử SVN và sử dụng TortoiseSVN cho tiện ích mở rộng Shell chưa?

1

Team Foundation Server khá dễ sử dụng và dễ dàng bắt đầu với nguồn gốc an toàn nguồn (chia sẻ thuật ngữ phổ biến cho lệnh). Tuy nhiên với một phần của sự phát triển đang ở Ấn Độ, họ có thể hiểu biết hơn về Subversion.

Nếu bạn sử dụng Subversion, tôi sẽ xem VisualSVN. Thật tuyệt vời, dễ sử dụng và nhanh chóng thiết lập (TFS hơi phức tạp để thiết lập). VisualSVN cung cấp một trình cắm thêm IDE ($ 50) và một phiên bản máy chủ khởi động Subversion cho các máy Windows (miễn phí)

+0

TFS rất, rất xa miễn phí. –

+0

ah, không nhận thấy phần miễn phí. –

+0

mặc dù nó là phần nào miễn phí, nếu bạn có đăng ký MSDN anyway. –

0

Tôi thứ hai SVN và TortoiseSVN.

Tôi đã chuyển từ CVS và WinCVS và tôi rất hài lòng với thiết lập này.

0

Tôi khuyên bạn nên kiểm soát nguồn nơi hầu hết các thành viên trong nhóm của bạn có nhiều kinh nghiệm nhất hoặc nơi bạn có ai đó trong nhóm của bạn là chuyên gia.

Theo ý kiến ​​của tôi, bên cạnh "vô tận git là tốt hơn so với Subversion là tốt hơn so với CVS" -discussion tôi không nghĩ rằng sự khác biệt giữa chúng là những gì quan trọng.

Điều quan trọng hơn là phải có người thực sự biết cách sử dụng bất kỳ hệ thống nào bạn quyết định sử dụng.

1

Đề xuất của tôi là Subversion + TortoiseSVN (để tích hợp Explorer) + AnkhSVN (tích hợp với Visual Studio).

Tôi nghĩ bạn không nên sử dụng bất kỳ hệ thống điều khiển phiên bản phân phối nào vì sau đó bạn sẽ phải quay lại trung tâm có thể gây đau đớn.

1

Như đã đề cập SVN và Rùa là cách để đi.

Tôi cũng sẽ nhận được giấy phép cho SVN trực quan (http://www.visualsvn.com/) không miễn phí nhưng nó thực sự tốt, nó sử dụng Tortoise svn và cung cấp cho bạn các tính năng của nó trong IDE.

0

Thiết lập Subversion để phát triển .Net đã trở nên dễ dàng hơn.Bạn có thể bắt đầu bằng installing Visual SVN Server. Điều này sẽ cài đặt Subversion Server trên máy tính Windows, sẽ làm việc cho bạn thông qua việc thiết lập kho lưu trữ, xác thực, v.v.

Sau đó, để tích hợp Visual Studio với Subversion bạn có thể thử VisualSVN. Nhưng nếu ngân sách của bạn không cho phép, Ankhsvn cũng hoạt động tốt, tôi sử dụng nó hàng ngày.

0

Tôi phải đưa ra quyết định tương tự vài tháng trước. Tôi rất thích SVN, nhưng việc thiếu GUI cho chính quyền là một vấn đề lớn đối với nhóm của tôi. TFS là lý tưởng, nhưng rất tốn kém.

Chúng tôi quyết định đáp ứng nửa chừng và giấy phép SourceGear Vault. Nó không đáp ứng yêu cầu của bạn "miễn phí", thật không may. Mặc dù tôi đã tìm thấy comparison with SVN của mình để trở nên thú vị.

4

Subversion (SVN) rõ ràng là một lựa chọn phổ biến. Nó cũng khá phổ biến được sử dụng ngay bây giờ (Google Code, Sourceforge, vv) vì vậy cần có rất nhiều tài liệu về việc sử dụng nó. Git cũng là một lựa chọn tốt, nhưng thiếu giao diện GUI có sẵn khiến nó không phù hợp với yêu cầu của bạn.

Tôi giả sử vì bạn đang sử dụng .NET, bạn đang phát triển trong môi trường Windows chủ yếu. Kiểm tra các sản phẩm VisualSVN. Họ tạo ra một sản phẩm Server (MIỄN PHÍ) tuyệt vời để thực sự chạy một máy chủ svn chính thức trong một môi trường cửa sổ (nó hỗ trợ SSL, xác thực nhóm/người dùng bao gồm hỗ trợ Active Directory).

Họ cũng cung cấp một plugin Visual Studio, mặc dù nó không phải là miễn phí (mặc dù khá hợp lý tại $ 49/nhà phát triển). AnkhSvn là một tùy chọn trình khách Visual Studio khác. Nó không hoàn toàn tuyệt vời, nhưng nó hoàn toàn miễn phí.

http://www.visualsvn.com/server/ - Miễn phí Windows SVN Server

http://www.visualsvn.com/visualsvn/ - Visual Studio Khách hàng Plugin

http://ankhsvn.open.collab.net/ - miễn phí Visual Studio Khách hàng Plugin

Vì vậy, tôi nghĩ rằng Subversion sử dụng dịch vụ sản phẩm VisualSVN của tôi sẽ cung cấp cho bạn tốt nhất cửa sổ/gui hội nhập ở một mức giá rất hợp lý.

2

SVN hút khá nghiêm trọng qua HTTP theo kinh nghiệm của tôi. Bạn sẽ muốn kéo tóc của bạn ra nếu repo của bạn có kích thước đáng kể đặc biệt là với một chuyến đi vòng xuyên Đại Tây Dương nhồi trong đó. Cá nhân tôi muốn đi với Mercurial.

Google gần đây đã thực hiện một số research trên Git so với Mercurial. Ưu điểm lớn nhất của Mercurial là nó chơi cực tốt với HTTP.

TortoiseHg, trong khi không hoàn toàn trưởng thành như TortoiseSVN, là một giao diện đồ họa khá vững chắc. Mặc dù bạn đã đề cập bạn không quan tâm đến việc phân nhánh và hợp nhất, đây là những hoạt động phổ biến trong tất cả DVCS. May mắn thay vì chúng là phổ biến, chúng được hỗ trợ tốt trong UI và các hoạt động tương đối không đau.

0

Nếu bạn chắc chắn mình sẽ tham gia Hệ thống nhóm, thì tôi tin rằng bạn có thể sử dụng bản dùng thử 180 ngày. Bằng cách đó, bạn sẽ không phải chuyển đổi.

+0

Bất cứ ai muốn nói lý do tại sao downvote? Không thể học nếu bạn không dạy. –

0

Bạn đã thử mở kết nối (http://unfuddle.com/). Hoàn thành tất cả các yêu cầu của bạn.

1

Mercurial là tuyệt vời và thực sự dễ dàng.

0

Một phiếu bầu khác cho SVN.
Để có máy chủ SVN gọn nhẹ trên cửa sổ, hãy xem sliksvn. Nó không làm duyệt web nguồn http, nhưng là một thiết lập nhỏ hơn nhiều và dễ dàng hơn so với các máy chủ dựa trên apache cho các nhóm nhỏ.

1

Cung cấp cho Mercurial một shot. BitBucket có tài khoản miễn phí mà bạn có thể chơi cùng. Tôi đã viết thêm về lý do tại sao tôi sử dụng nó here.

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