Tôi cảm thấy xấu hổ khi nói rằng tôi hơi không biết gì về quy trình được sử dụng để cập nhật một plugin thông qua tortoir svn mặc dù plugin của tôi đã ở trên kho lưu trữ trong nhiều năm và đã có hơn 300.000 lượt tải xuống!
Đừng như vậy. SVN có thể gây khó khăn cho nhiều người ... vì vậy hãy từng bước thực hiện mọi thứ ...
Đây là những gì tôi đã làm cho đến nay.
- mã các cập nhật plugin trên địa phương của tôi cho đến khi tôi hài lòng với nó
- sao chép tất cả các tệp trong thư mục plugin cục bộ của tôi vào / trunk / (tệp plugin và readme có số phiên bản cập nhật)
- cam kết thư mục trung kế
- bấm chuột phải vào thư mục trung kế và chọn tạo nhánh / thẻ và đặt nó để sao chép vào thư mục trong / tags / với tên là số phiên bản
Điều đó có đúng và theo đúng thứ tự không? Nếu không, cách chính xác là gì?
Hầu hết ...
Các bước bạn nên tuân theo:
- Mã các plugin cập nhật cục bộ cho đến khi bạn hài lòng với nó
- Tăng thẻ "ổn định" trong
readme.txt
tệp của bạn để khớp với số phiên bản mới
- Sao chép cập nhật cục bộ của bạn vào
/trunk
thư mục của thư mục plugin cục bộ
- Cam kết toàn bộ plugin để lưu các thay đổi vào
/trunk
kho lưu trữ
- Nhấp chuột phải
/trunk
và tạo một thẻ mới, sao chép vào /tags/X.X.X
nơi xxx là cùng một phiên bản trong thẻ "ổn định" của readme.txt
(bước 2)
- Cam kết toàn bộ plugin để lưu thẻ
vì một số lý do, tôi đã chuyển từ phiên bản 2.8.1 sang 2.81.2 trên bản cập nhật cuối cùng của mình, điều này có nghĩa là nó sẽ không hiển thị dưới dạng bản cập nhật có sẵn trong bảng điều khiển của những người có phiên bản 2.81.2 nếu tôi thay đổi số phiên bản tiếp theo thành 2.9?
Chơi lô tô. Nếu bạn đã cam kết phiên bản 2.81.2 dưới dạng bản cập nhật và mọi người thực sự đã tải xuống bản cập nhật đó, họ sẽ không thấy 2.9 khi bạn phát hành bản cập nhật.
Làm thế nào để wordpress xác định phiên bản mới nhất và nếu người dùng nên cập nhật phiên bản của họ? Nó có làm một phiên bản_compare không? chỉ hoạt động với định dạng phiên bản php thích hợp phải không? ví dụ. 2.9.2 được coi là phiên bản thấp hơn 2.81.2? (bởi vì, theo tôi hiểu, version_compare bắt đầu ở bên trái và so sánh cao hơn / thấp hơn cho mỗi chữ số nên 9 sẽ được coi là ít hơn 81)
Chính xác. So sánh phiên bản PHP tiêu chuẩn sẽ thấy phiên bản 2.81.2 là phiên bản mới hơn 2.9 vì 81> 9.
Tôi khuyên bạn nên phát hành phiên bản 3.0 tiếp theo, sau đó hãy thật cẩn thận khi phiên bản trong tương lai để ngăn loại lỗi đánh máy này.
nếu tôi phát hiện ra một lỗi ngớ ngẩn trong mã không thực sự ảnh hưởng đến hoạt động của plugin, có thể là lỗi chính tả hoặc hình ảnh bổ sung. Tôi chỉnh sửa gì và cam kết thực hiện bất kỳ tải xuống mới nào của plugin có chứa thay đổi?
Tôi có phải chỉnh sửa thân cây VÀ thư mục thẻ và cam kết cả hai không?
Nếu bạn cần thực hiện một thay đổi nhỏ, hãy coi đó là một bản phát hành bảo trì . Tôi thường theo loại lược đồ phiên bản này:
2 . 1 . 3 . 5
major minor maint build
Xây dựng số Tôi chỉ từng sử dụng nội bộ hoặc cho các bản phát hành beta ... hầu như bạn sẽ không bao giờ thấy số bản dựng từ tôi trừ khi tôi gửi email cho bạn một cách thủ công (đó là cách tôi có thể phân phối các phiên bản tiền phát hành không phá vỡ các bản cập nhật WordPress) .
Nếu tôi nhận thấy một lỗi trong phiên bản trực tiếp, tôi sẽ tạo một bản vá nhanh và phát hành phiên bản bảo trì. Giả sử tôi đã phát hành phiên bản 2.2 của một plugin và ai đó thông báo tôi đã quên gọi jQuery ở chế độ noConflict (). Tôi sẽ thực hiện một bản vá nhanh và phát hành ngay 2.2.1.
Sự gia tăng trong phiên bản sẽ buộc WordPress nhận ra bản cập nhật và cung cấp bản sửa lỗi cho bất kỳ ai đã cài đặt phiên bản 2.2.
Để phát hành phiên bản bảo trì, bạn cần thực hiện theo các bước chính xác giống như khi bạn phát hành phiên bản đầy đủ của hệ thống. Vì vậy, thực hiện thay đổi, tăng phiên bản trong readme.txt
, cam kết /trunk
, thẻ, v.v.
Nhưng một khi bạn đã gắn thẻ một cái gì đó, bạn không bao giờ thay đổi nó một lần nữa. Hãy nghĩ về /tags
thư mục của bạn như đóng băng trong thời gian. Mỗi phiên bản trong thư mục đó là một ảnh chụp nhanh về plugin của bạn tại một thời điểm cụ thể. Bạn không bao giờ nên thay đổi bất kỳ tập tin trong /tags
thư mục trực tiếp.
Nếu bạn thấy mình nghĩ rằng đó có thể là một ý tưởng tốt, hãy tự đập vào sau đầu và phát hành phiên bản bảo trì thay thế :-)
Như Piet đã đề cập, tôi đã viết một bộ hướng dẫn từng bước tốt trước đó ... nhưng trang web dường như đã mất ảnh chụp màn hình của tôi. Đây là một phiên bản khác của hướng dẫn từng bước tương tự với ảnh chụp màn hình từ Rùa được lưu trữ trên trang web của riêng tôi: http://eamann.com/tech/how-to-publish-a-wordpress-plugin-subversion/