Chúng ta có nên đặt các tài liệu đặc tả trong hệ thống kiểm soát nguồn như svn không?


11

Hôm nay, một trong những đồng nghiệp của tôi và tôi có một cuộc tranh luận về "Chúng ta có nên đưa các tài liệu đặc tả vào hệ thống kiểm soát nguồn như SVN không?". Theo ý kiến ​​của tôi, nó nên được. Mọi thứ liên quan đến phát triển dự án nên được kiểm soát cẩn thận với hệ thống kiểm soát nguồn. Có phải đó là một khái niệm sai trong quy trình phát triển phần mềm?

Câu trả lời:


4

Vậy điều gì sẽ xảy ra nếu hầu hết các hệ thống kiểm soát nguồn chỉ lưu trữ chúng dưới dạng các đốm màu? Hầu hết mọi người không cung cấp thông tin về sự khác biệt giữa các tài liệu, nhưng nếu có, bạn luôn có thể có hai phiên bản và sử dụng tính năng của hệ thống tác giả để tìm khác biệt.


2
Đúng, tôi rất vui nếu SVN chỉ đảm bảo tôi luôn có phiên bản hiện tại. Khác biệt là ít quan trọng hầu hết thời gian.
Zachary K

Đó không phải là vấn đề duy nhất, khóa và ghi đè thay đổi là vấn đề khi có nhiều biên tập viên
Nicole

1
Tài liệu khác nhau không quan trọng đối với bạn. Nhưng với một PM, khả năng nhìn thấy những thay đổi trong thông số kỹ thuật là rất quan trọng.
Martin York

Câu trả lời này có vẻ giống như một nhận xét về một số câu trả lời khác. Ví dụ, câu hỏi đề cập không có gì về blobs.
Bryan Oakley

15

Với dung lượng ổ cứng ở mức một xu mỗi gigabyte mỗi tháng, không có lý do chính đáng nào để không đưa tài liệu vào hệ thống kiểm soát nguồn và nó có thể hữu ích. Sở thích cá nhân của tôi là viết tài liệu bằng cách sử dụng đánh dấu nội tuyến, ví dụ Wiki Markup hoặc DocBook . Điều này cho phép sử dụng các công cụ mạnh mẽ để so sánh và sửa đổi tài liệu.


3
Nếu không có gì khác, thật thú vị khi xem v1.0 của thông số kỹ thuật trông như thế nào, so với những gì tàu!
Martin Beckett

8

Phiên bản tài liệu đặc điểm kỹ thuật chắc chắn là một mục tiêu xứng đáng.

Tuy nhiên, các tài liệu đặc tả của bạn chỉ có văn bản và trong một tệp văn bản thuần túy ? Nếu vậy, đây có thể là một giải pháp tốt.

Nếu không, kiểm soát nguồn có lẽ không phải là nơi phù hợp với họ - kiểm soát nguồn có hại cho các tệp nhị phân .

Thông thường, các tệp văn bản đơn giản không tốt cho định dạng hoặc để xem nhanh, do đó, wiki với phiên bản có lẽ là một ý tưởng tốt hơn.


Thông thường, tài liệu của chúng tôi không chỉ bao gồm nội dung văn bản đơn thuần mà còn cả hình ảnh như sơ đồ UML hoặc một cái gì đó tương tự. Tôi hoàn toàn đồng ý rằng các tệp có dạng nhị phân không phù hợp với hệ thống kiểm soát nguồn. Tuy nhiên, tôi nghĩ nó tốt hơn không có gì. đúng? Nếu có wiki chúng ta có thể áp dụng. Điều đó sẽ rất tuyệt. Nhưng tôi lo lắng về điều đó. Người dân của chúng tôi sẽ "quá bận rộn" để học cách sử dụng wiki. (Buồn)
Edison Chuang

1
Có rất nhiều wiki bây giờ với các biên tập viên WYSIWYG. Tôi là một chuyển đổi sharepoint rất miễn cưỡng. Là một nhà phát triển, tôi ghét sharepoint với một niềm đam mê. Sau đó, tôi đã đăng ký với Microsoft BPOS đi kèm với sharepoint và sử dụng nó để cộng tác trong các dự án với các thành viên nhóm từ xa. Nó có wiki, diễn đàn, lịch và thư viện tài liệu (theo dõi cho Microsoft Office Docs) và một loạt các nội dung khác giúp cho việc cộng tác dự án trở nên dễ dàng. Tôi nghĩ rằng một Wiki như một đặc tả sống là hoàn hảo vì lịch sử mà nó cung cấp.
Michael Brown

Nói đúng ra, kiểm soát nguồn không tệ đối với các tệp nhị phân. Nó không giống như nó phá hủy hoặc biến đổi chúng theo một cách nào đó. Tuy nhiên, có thể cho rằng các tệp nhị phân có hại cho kiểm soát nguồn, nhưng chỉ vì chúng chiếm nhiều dung lượng đĩa và làm cho việc nhân bản chậm hơn. Mặc dù vậy, dung lượng đĩa rất rẻ, vì vậy nó không tệ như cách đây 5 năm.
Bryan Oakley

1

Tất cả các tài liệu nên ở một số dạng lưu trữ (tốt nhất là với các điều khiển sửa đổi).

Hệ thống kiểm soát nguồn là một giải pháp. Nhưng thông thường các hệ thống này được thiết kế cho các tài liệu văn bản đơn giản. Do đó, những thứ như tài liệu Word hoặc RTF, vv không phù hợp lắm (đặc biệt là khi bạn thử và so sánh các phiên bản khác nhau).

Nhưng có những giải pháp khác được thiết kế đặc biệt cho các tài liệu. SharePoint lò xo để tâm, nhưng tôi chắc chắn có những người khác.


0

Chắc chắn rồi. Vấn đề tài liệu được lưu trữ dưới dạng nhị phân (ví dụ tài liệu từ) gây khó chịu. Một cách giải quyết tốt là nếu bạn sử dụng một trong các công cụ Rùa (tôi đã thử SVN và Mercurial), bạn có thể chọn "Visual Diff" cho phép bạn chọn docdiff. Với docdiff bạn có thể thấy tất cả các thay đổi với màu sắc và công cụ :-). Nhược điểm chính là mỗi khi bạn thực hiện thay đổi, toàn bộ tài liệu lại được cam kết (không chỉ thay đổi). Nhưng xem xét rằng các tài liệu văn bản không lớn lắm và không gian đó có thể không phải là vấn đề chính của bạn, đây không phải là vấn đề.

Tôi chắc rằng bạn có thể sử dụng docdiff mà không cần Rùa, chỉ là tôi chưa thử nó.


Mặc dù vậy, nó không khắc phục sự cố "Ghi đè thay đổi từ nhiều biên tập viên".
Omar Kohl

0

Có một cách tiếp cận khác mà bạn nên thảo luận: BDD

Vui lòng xem xét Phát triển hướng hành vi với các thông số kỹ thuật thực thi. Thông số kỹ thuật của bạn được đơn giản hóa thành một loạt các câu lệnh Cho - Khi - Sau đó được lưu trữ trong các tệp văn bản. Một công cụ BDD như Cucumber hoặc SpecFlow chuyển đổi các tệp văn bản đó thành các thử nghiệm thực thi mà công cụ xây dựng của bạn có thể thực thi.

Dưa chuột: http://cukes.info/ - BDD cho Ruby

SpecFlow: http://www.specflow.org/ - BDD cho .Net

Để có bản giới thiệu nhanh về quy trình làm việc với một công cụ như SpecFlow, hãy xem qua phần giới thiệu về SpecFlow của Rob Conery: http://tekpub.com/view/con accept / 5

Giờ đây, không chỉ bạn đang phiên bản mã, mà cả thông số kỹ thuật và công cụ Tích hợp liên tục của bạn (nghĩ rằng TeamCity, CruiseControl, Hudson, v.v.) đang thực thi rằng tất cả các thông số kỹ thuật vẫn còn hiệu lực trên MỌI bản dựng ... Điều đó có giá trị với bạn không?

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.