Tại sao tôi lại lưu trữ mã ở đâu đó như thế này?
Một điểm quan trọng của phát triển phần mềm nguồn mở là chia sẻ mã nguồn. Có một số cách để làm điều này, như đặt các tệp tar / zip trên máy chủ web hoặc ftp. Các dịch vụ như mã google (hoặc sourceforge.net, gitorious.org, bitbucket.org và nhiều dịch vụ khác) không cần phải chạy máy chủ của riêng bạn cho mục đích này.
Và điều đó có nghĩa là tôi phải loại bỏ trang web lưu trữ hiện tại của mình hay đây là một loại lưu trữ hoàn toàn khác?
Các dịch vụ này không phải là máy chủ web đa năng, nhưng chạy các dịch vụ rất chuyên biệt. Chúng không phải là trang chủ của một sản phẩm, mà là một bảng điều khiển dành cho nhà phát triển.
Với mã google bạn nhận được
- một wiki
- một con bọ
- không gian tải tập tin thường xuyên
- một máy chủ kiểm soát phiên bản
Tất nhiên bạn có thể thiết lập các phần mềm này trên một máy chủ web thông thường (công cụ kiểm soát phiên bản có thể khó, nhưng điều đó phụ thuộc nhiều vào chi tiết), nhưng lợi ích chính của việc sử dụng trình phát triển là bạn không cần phải cẩn thận của các hệ thống này cho riêng bạn. Hạn chế chính là bạn không có quyền kiểm soát về phần mềm nào được sử dụng trên máy chủ, bạn phải sống với những gì có sẵn trên máy chủ đó. Bạn cũng cần xem xét điều gì xảy ra nếu dịch vụ không hoạt động (ok, google không bao giờ thất bại) và nếu bạn có thể lấy dữ liệu từ máy chủ hiện tại sang máy chủ khác hoặc máy chủ của riêng bạn (nghĩ về sao lưu).
Điều gì xảy ra khi tôi biến trang web của mình thành nguồn mở, tôi có quyền gì,
Đây là một câu hỏi khó, vì nó phụ thuộc vào luật pháp của quốc gia nơi bạn sống.
Tôi cho đi những quyền gì.
Điều này phụ thuộc vào giấy phép bạn cấp cho sản phẩm. Nó có thể đi từ nguồn mở độc quyền (nghĩ về PGP) trong đó người dùng về cơ bản không thể làm gì với mã, ở đầu kia của thang đo là miền công cộng, nơi mọi người có thể làm bất cứ điều gì mình muốn.
Làm thế nào nó hoạt động, mọi người chỉ đến và ném mã miễn phí cho tôi?
Điều này rất khó xảy ra, vì sản phẩm của bạn cần đủ sự phổ biến để thu hút các nhà phát triển khác.
[...] Và bây giờ nó hỏi tôi có muốn dự án có lưu trữ mã Git, Mercurial hoặc Subversion không.
Đây là ba hệ thống kiểm soát phiên bản khác nhau, trong đó Subversion là một hệ thống tập trung, trong khi Git và Mercurial được phân phối.
Có những cuộc chiến tôn giáo về việc sử dụng cái nào, nhưng điểm chính là sử dụng nó. Xem http://martinfowler.com/bliki/VersionControlTools.html để biết thêm chi tiết.
Khi nào nên chọn Subversion:
- Bạn có các tệp nhị phân, không thể dễ dàng hợp nhất và cần khóa-> sửa đổi-> cam kết-> mở khóa quy trình làm việc, hỗ trợ lật đổ
- Bạn chỉ cần kiểm tra một phần của cấu trúc thư mục.
Có một phần mở rộng khóa cho đồng bóng, nhưng tôi không có kinh nghiệm với nó, và không thể nói nếu nó có thể sử dụng được.
Khi bạn không cần các tính năng trước đây, tốt hơn là sử dụng Mercurial hoặc Git. Cả hai đều có những ưu điểm sau so với Subversion: