This text is a work in progress—highly subject to change—and may not accurately describe any released version of the Apache™ Subversion® software. Bookmarking or otherwise referring others to this page is probably not such a smart idea. Please visit http://www.svnbook.com/ for stable versions of this book.

Lời Tựa

Karl Fogel

Chicago, Ngày 14 Tháng Ba, 2004.

Một bảng Những Câu Hỏi Thường Gặp (FAQ) tồi là bảng mà không biên soạn những câu hỏi mọi người thường hay hỏi mà là những câu hỏi tác giả mong muốn mọi người sẽ hỏi. Có lẽ bạn đã gặp điều này trước đây:

Q: Tôi sử dụng Glorbosoft XYZ để tối ưu hoá năng suất của đội ngũ như thế nào?

A: Rất nhiều khách hàng của chúng tôi muốn biết họ có thể làm cách nào để tối ưu hoá năng suất với phần mềm nhóm văn phòng cách tân đã được cấp bằng sáng chế của chúng tôi. Đơn giản là. Trước tiên, nhấp chuột vào menu Tập tin, cuộn xuống Tăng Năng suất, và…

Vấn đề với loại FAQ này là chúng không phải là FAQ, theo đúng nghĩa đen. Không ai từng gọi đường dây hỗ trợ kỹ thuật và hỏi, Làm cách nào để chúng tôi tối ưu hoá năng suất?. Thay vào đó, mọi người hỏi rất cụ thể những câu hỏi, như là Làm cách nào để chúng tôi có thể thay đổi hệ thống lịch để gửi nhắc nhở trước hai ngày thay vì một ngày? và vv. Nhưng nó dễ hơn rất nhiều để tạo nên Những Câu Hỏi Thường Gặp so với việc tìm ra những câu hỏi thật. Biên soạn một bảng câu hỏi FAQ đúng nghĩa yêu cầu một sự nỗ lực có tổ chức và thường xuyên: xuyên suốt vòng đời của một phần mềm, những câu hỏi được tiếp nhận phải được lưu vết, theo dõi những hồi đáp, và tất cả được cô đọng vào trong một tổng thể mạch lạc, có thể truy xuất được mà phản ánh tập hợp kinh nghiệm của những người sử dụng bên ngoài. Nó yêu cầu tính kiên nhẫn, thái độ quan sát của nhà tự nhiên học trong lĩnh vực. Không đưa ra giả thuyết, không có tuyên bố tầm nhìn chiến lược ở đây—quan sát và ghi chú chính xác là những điều cần thiết nhất.

Điều tôi thích ở cuốn sách này đó là nó phát triển đúng từ tiến trình đó và thể hiện nó trong tất cả các trang. Nó là kết quả trực tiếp của việc tiếp cận của tác giả với người sử dụng. Nó đã bắt đầu với quan sát của Ben Collins-Sussman rằng mọi người đã hỏi cùng một câu hỏi cơ bản lặp đi lặp lại trên diễn đàn Subversion: các quy trình công việc chuẩn để sử dụng với Subversion là gì? Có phải nhánh (branch) và thẻ (tag) hoạt động theo cùng một cách như trong các hệ thống kiểm soát phiên bản khác không? Làm cách nào để tôi tìm ra ai đã thực hiện một thay đổi cụ thể?

Mệt mỏi với việc tiếp nhận cùng một câu hỏi ngày này sang ngày khác, Ben đã làm việc cực lực hơn một tháng vào mùa Hè năm 2002 để viết Cẩm Nang Subversion, một bản hướng dẫn sử dụng 60 trang bao hàm tất cả những điều cơ bản trong việc sử dụng Subversion. Bản hướng dẫn sử dụng không tạo ra kỳ vọng là được hoàn chỉnh, nhưng nó được phân phối với Subversion và có được người sử dụng trên bước khởi đầu gay go đó trên con đường học tập. Khi O'Reilly quyết định phát hành một cuốn sách Subversion đầy đủ, đường đi với ít chướng ngại nhất trở nên rõ ràng: chỉ việc mở rộng cẩm nang Subversion.

Do đó ba đồng tác giả của cuốn sách mới đã được giới thiệu với một cơ hội bất thường. Một cách chính thức, công việc của họ là viết một cuốn sách từ-trên-xuống, bắt đầu từ mục lục và một bản nháp sơ khởi. Tuy nhiên họ cũng có quyền truy cập vào một dòng chảy đều đặn—thật vậy, một mạch nước không kiểm soát—của nguồn nguyên liệu từ-dưới-lên. Subversion đã được sử dụng bởi hàng ngàn người sử dụng tiên phong, và những người này cung cấp hàng tấn phản hồi, không chỉ về Subversion, mà còn về những tài liệu đã tồn tại của nó.

Trong suốt thời gian họ viết cuốn sách, Ben, Mike và Brian thường xuyên lui tới diễn dàn Subversion và phòng chát, cẩn thận ghi chú những vấn đề mà người sử dụng đang gặp phải trong những tình huống thực. Giám sát những phản hồi như vậy dù sao cũng là một phần của mô tả công việc của họ ở CollabNet, và điều này cho họ một lợi thế to lớn khi họ lập tài liệu Subversion. Cuốn sách mà họ đã viết có căn cứ vững chắc trên nền tảng của kinh nghiệm, không phải dựa trên những suy nghĩ viễn vông không thực tế; nó bao gồm những khía cạnh tốt nhất của cẩm nang hướng dẫn sử dụng và bảng Câu Hỏi Thường Gặp. Tính đối ngẫu này có thể không thể hiện rõ trong lần đọc đầu tiên. Theo thứ tự từ trước ra sau, cuốn sách đơn giản là một sự mô tả dễ hiểu của một phần của phần mềm. Nó có phần tổng quan, phần hướng dẫn lướt qua bắt buộc, chương về cấu hình quản trị, một vài chủ đề nâng cao, và dĩ nhiên, lệnh tham khảo và hướng dẫn gỡ rối. Chỉ khi bạn quay trở lại để tìm giải pháp cho một vấn đề cụ thể thì tính đối ngẫu của nó mới hiện rõ: thông tin chi tiết được cung cấp khi tìm kiếm một cách bất ngờ, những ví dụ được đúc kết từ những tình huống sử dụng thực tế, và trên tất cả đó là tính nhạy với nhu cầu và với quan điểm của người sử dụng.

Dĩ nhiên, không thể hứa chắc rằng cuốn sách này sẽ trả lời mọi câu hỏi bạn có về Subversion. Đôi khi độ chính xác mà nó dự đoán câu hỏi của bạn sẽ có vẻ ngoại cảm kỳ lạ; nhưng thỉnh thoảng, bạn sẽ vấp ngã vào trong một vòng xoáy của những kiến thức cộng đồng và trở ra tay trắng. Khi điều đó xảy ra, cách tốt nhất bạn nên làm là gửi email đến và trình bày vấn đề của bạn. Tác giả vẫn còn ở đó và vẫn theo dõi, những tác giả tham gia vào cuốn sách không phải chỉ là ba người được liệt kê trên trang bìa mà còn có rất nhiều người đã đóng góp chỉnh sửa và đóng góp tài liệu ban đầu. Từ cách nhìn của cộng đồng, giải quyết vấn đề của bạn đơn thuần chỉ là một ảnh hưởng phụ dễ chịu của một dự án lớn hơn nhiều—cụ thể là, từ từ điều chỉnh cuốn sách và điều chỉnh chính bản thân Subversion để làm cho phù hợp hơn với cách mà mọi người thực tế sử dụng nó. Họ rất mong muốn được lắng nghe bạn, không chỉ bởi vì họ có thể giúp bạn mà còn bởi vì bạn có thể giúp họ. Với Subversion, cũng như với tất cả những dự án phần mềm miễn phí đang hoạt động, bạn không đơn độc.

Hãy để cuốn sách là người bạn đồng hành đầu tiên của bạn.