Cập nhật lên phiên bản dev mới hơn của mô-đun bằng Drush (bỏ qua các bản phát hành điểm / đề xuất, mà không kiểm soát phiên bản rác)


20

[NB Câu hỏi này nằm ở phía sau, nhưng riêng biệt / xa hơn, một câu hỏi trước đó của tôi, ở đây .]

Tôi đã sử dụng Drush một thời gian, nhưng thường thì tôi bị bối rối. Hiện tại, tôi thực sự không chắc chắn làm thế nào để đi về điều này.

Kịch bản: hiện tại, trang web sử dụng một bản phát hành dev, cách ngày trong quá khứ. Trong khi đó, không có bản phát hành điểm nào được tạo ra, nhưng bản phát hành dev mới hơn có. Vì vậy, chúng tôi có một cái gì đó như:

Reroute Email           6.x-1.x-dev (2010-Sep-27)
Recommended version:    6.x-1.0 (2008-Jul-24)   
Development version:    6.x-1.x-dev (2011-Feb-25) 

Ghi drush dl <module>-6.x-1.x-devđè lên thư mục hiện có với bản phát hành 1.x dev mới nhất. Điều đó tốt, nhưng nó bỏ thư mục .svn.

Nếu tôi làm drush upc <module>, nó sẽ tải xuống bản phát hành điểm (xem chỉnh sửa bên dưới), điều mà tôi không muốn, nhưng nếu tôi làm drush upc <module>-6.x-1.x-dev, nó chỉ làm mới dữ liệu cập nhật và sau đó cho tôi biết "Phiên bản đã chỉ định" trên dòng có liên quan trên đầu ra.

Vậy làm cách nào để sử dụng drush để ghi đè lên bản phát hành dev cũ, lấy cái mới ở vị trí của nó, mà không làm hỏng thư mục SVN?

EDIT: Trên thực tế, trong trường hợp này, drush upc <module>tải xuống phiên bản chính xác, nhưng tôi khá chắc chắn nếu bản phát hành điểm có ngày như 6.x-1.0 (2011-ngày 24 tháng 1) thì nó sẽ có được phiên bản đó. Bất cứ ai muốn làm rõ / chính xác?

Câu trả lời:


9

Tôi tìm thấy câu hỏi của bạn ngay bây giờ bởi vì tôi có cùng một câu hỏi. Không tìm thấy câu trả lời chính xác, nhưng điều này làm việc cho tôi:

#svn rm <module>  
#svn commit -m"removing the module... whatever you want to write"  
#drush dl <module>-6.x-2.x-dev  
#svn add <module>  

Vì một số lý do, việc không thực hiện cam kết giữa rm và dl đã gây ra sự cố với svn. Tôi không biết đủ về svn để biết tại sao, nhưng sẽ biết ơn nếu ai đó có thể giải thích!


Xin chào @rainbreaw, có lẽ câu trả lời cho Q khác của tôi ở đây có thể được sử dụng không?
NikLP


2

Có thể có một số tác vụ cài đặt mà phiên bản mới của mô-đun cần để hoạt động chính xác, ví dụ nếu phiên bản dev có lược đồ khác.

Vì vậy, trước khi drush dl module-7.x.2.x hãy xem gỡ cài đặt và cài đặt chi tiết trong mô-đun.

Cẩn thận nếu bạn có dữ liệu mà bạn không muốn mất trong các bảng db có liên quan. Hãy sao lưu nếu bạn lo lắng hoặc không chắc chắn.

Nếu bạn cần, vô hiệu hóa và gỡ cài đặt mô-đun trước khi tải xuống và kích hoạt mô-đun mới.

Sử dụng drush dis và sau đó drush pm-gỡ cài đặt


1
Gỡ cài đặt mô-đun có thể cũng có thể loại bỏ tất cả dữ liệu mà nó đã lưu vào cơ sở dữ liệu. Không phải tập lệnh update.php có nghĩa vụ xử lý bất kỳ thay đổi lược đồ nào từ phiên bản này sang phiên bản khác?
Tony Patrinos

Đó là một điểm tốt, tôi sẽ sửa đổi câu trả lời của tôi
chim
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.