Điểm:0

Áp dụng một bản vá - làm thế nào?

lá cờ cn

Tôi đang cố gắng cài đặt Radix trên Drupal 9 (Drush 10) - Quá trình cài đặt liên tục bị lỗi trong trình soạn nhạc / drush en radix và tôi đã lần ra một "lỗi" hiện tại (hoặc ít nhất là một lỗi đã đóng) mà ai đó đã viết một bản vá cho (# 12) - Tôi cảm thấy khó chịu nhưng làm thế nào để áp dụng bản vá này?

Tôi đã đọc ở đâu đó trên một bài đăng khác rằng tôi cần thêm phần này vào composer.json của mình, nhưng tôi không chắc phần nào hoặc cú pháp bắt buộc. Xin lỗi, tôi không thể hữu ích hơn với nhiều thông tin hơn nhưng hy vọng ai đó trong cộng đồng có thể hỗ trợ?

leymannx avatar
lá cờ ne
Tùy thuộc vào lỗi chính xác mà bạn nhận được câu trả lời được đánh giá cao nhất hoặc một trong những câu trả lời khác trong câu hỏi được liên kết sẽ giúp bạn.
lá cờ tz
các bản vá dựa trên composer.json cũng ở đây https://drupal.stackexchange.com/questions/219649/how-to-manage-patches-in-composer-when-theyre-merged-into-the-module nhưng có lẽ liên kết leymannx ở trên có biết thêm chi tiết
leymannx avatar
lá cờ ne
Được rồi, vì vậy tôi đã học được từ @anonymous biết rằng chúng tôi cần thêm ngữ cảnh: Bạn thử cài đặt Radix chính xác như thế nào, các lệnh Trình soạn thảo, lệnh Drush, Hệ điều hành máy chủ và bạn gặp phải lỗi chính xác nào? Có vẻ như bạn hoàn toàn không quen thuộc với Composer hoặc thậm chí bạn không hề sử dụng nó. Vì vậy, vui lòng cung cấp thêm thông tin và cập nhật câu hỏi của bạn. Cảm ơn bạn
Điểm:-3
lá cờ fr

Việc này cực kỳ dễ dàng - bạn không cần phải thông qua trình soạn thảo hoặc bất kỳ thứ gì tương tự (mặc dù nếu bạn duy trì một trang web và cần nhiều bản vá để trang đó hoạt động, thì việc học cách sử dụng trình soạn thảo về lâu dài sẽ rất hữu ích).

Đây là cách bạn làm điều đó:

Chuyển đến thư mục cài đặt mô-đun 'radix'. Liên quan đến gốc web, đây phải là một cái gì đó giống như /mô-đun/cơ số hoặc /mô-đun/đóng góp/cơ số. Tải xuống bản vá vào thư mục đó - ví dụ: bạn có thể sử dụng wget https://www.drupal.org/files/issues/2022-01-11/3173811.patch hoặc bạn có thể sử dụng ftp hoặc bất kỳ phương pháp nào khác mà bạn thích.

Sau đó, trong cùng thư mục nơi bạn tải xuống bản vá, hãy sử dụng lệnh vá -p1 < 3173811.patch.

Điều này giả định rằng bạn đang sử dụng nhiều loại Unix cho trang web của mình - những lệnh này có sẵn trên hầu hết các bản phân phối. Nếu bạn đang sử dụng Windows, bạn cũng có thể tìm thấy các lệnh chính xác này nhưng bạn có thể phải tự cài đặt các lệnh đó.

Nếu đó vẫn là một rào cản quá lớn, thì ít nhất đối với bản vá này, việc sửa mã theo cách thủ công luôn là một tùy chọn. Bản vá chỉ sửa hai câu lệnh "sử dụng":

-sử dụng Robo\Task\Archive\loadTasks làm ArchiveTaskLoader;
-sử dụng Robo\Task\Filesystem\loadTasks làm FilesystemTaskLoader;
+sử dụng Robo\Task\Archive\Tasks làm ArchiveTaskLoader;
+sử dụng Robo\Task\Filesystem\Tasks làm FilesystemTaskLoader;

Bản vá nói rằng hai dòng đầu tiên cần phải bị xóa (đó là ý nghĩa của dấu trừ) và hai dòng thứ hai cần được thêm vào cùng một vị trí (đó là ý nghĩa của dấu cộng). Định dạng của bản vá sử dụng cột đầu tiên để hiển thị cho bạn những gì cần thay đổi - nếu không có gì trong cột đầu tiên, thì dòng đó sẽ không bị thay đổi. Nếu có - trong cột đầu tiên, dòng đó sẽ bị xóa.Nếu có dấu + trong cột đầu tiên, dòng sẽ được thêm vào. Cột đầu tiên đó chỉ được sử dụng trong bản vá, nó sẽ không xuất hiện trong mã trước hoặc sau khi bạn thay đổi nó.

leymannx avatar
lá cờ ne
OP đang sử dụng Trình soạn thảo, tại sao bạn lại khuyên họ áp dụng bản vá theo cách thủ công?
leymannx avatar
lá cờ ne
Nó sẽ biến mất sau khi cài đặt trình soạn nhạc tiếp theo.
lá cờ fr
Không, OP KHÔNG sử dụng Trình soạn thảo - bạn đang thiếu ngữ cảnh - OP đã hỏi câu hỏi này trên Slack và tiếp tục nhận được "nhà soạn nhạc" làm câu trả lời. Việc OP phải đến đây một ngày sau đó để hỏi cùng một câu hỏi có nghĩa là lời khuyên trên Slack về "nhà soạn nhạc" đã không giúp được gì. Rõ ràng, đó không phải là một câu trả lời đáp ứng. Nói với ai đó chưa cài đặt mọi thứ thông qua trình soạn thảo để sử dụng Trình soạn thảo để cài đặt các bản vá chỉ tạo ra các rào cản hơn là cố gắng giải quyết vấn đề.
lá cờ fr
Tôi cũng rõ ràng rằng Composer là một giải pháp tốt về lâu dài, nhưng vấn đề của OP còn cơ bản hơn thế - OP không hiểu những điều cơ bản về cách áp dụng một bản vá. Giả định rằng mọi người đều là nhà phát triển và mọi người đều là chuyên gia Soạn nhạc là một trong những lỗi cơ bản của hỗ trợ Drupal. Có lẽ hãy cố gắng tiếp cận điều này từ quan điểm của một người không phải là nhà phát triển toàn thời gian và chỉ muốn làm cho thứ gì đó hoạt động ...
leymannx avatar
lá cờ ne
Có, chúng tôi chưa tham gia Slack với người dùng đó. Tất cả những gì chúng tôi thấy là "cố gắng cài đặt thứ gì đó với Composer" nhưng không thành công (không có lỗi nào) và "Tôi cần bản vá này trong composer.json, nhưng tôi không biết cú pháp cần thiết". Đây là bối cảnh chúng tôi có, và câu trả lời của bạn có vẻ sai. Không xúc phạm! Tôi rất vui vì bây giờ tôi đã học được nhiều ngữ cảnh hơn về câu hỏi. Cảm ơn bạn
lá cờ cn
@anonymous Hãy nhớ rằng trang web không ở đây để hỗ trợ trực tiếp, nó ở đây để tạo tài liệu tham khảo lâu dài. Theo định nghĩa, tất cả ngữ cảnh cần thiết để trả lời một câu hỏi đều nằm trong nội dung câu hỏi - nếu không, nó sẽ được trích xuất từ ​​người dùng trong nhận xét. và sau đó được thêm vào câu hỏi, để nó có thể có ý nghĩa đối với khách truy cập trong tương lai. Ngay bây giờ, tất cả những gì khách truy cập có thể thấy là một câu hỏi hỏi cách áp dụng một bản vá bằng trình soạn thảo và một câu trả lời cung cấp chi tiết về cách thực hiện theo một số cách khác, chứ không phải cách được hỏi. Tôi đánh giá cao việc bạn có thêm ngữ cảnh và tất nhiên, thật tuyệt khi bạn đang cố gắng...
lá cờ cn
… để trợ giúp OP, nhưng để làm điều đó ở đây, bạn sẽ cần đưa ngữ cảnh bên ngoài vào câu hỏi, nếu không câu trả lời đơn giản là không có ý nghĩa. Nếu điều đó cần một chút hợp tác với OP để thay đổi câu hỏi sao cho phù hợp với những gì họ thực sự muốn hỏi thì điều đó tốt thôi, nhưng kết quả cuối cùng cần phải là câu trả lời giải quyết được câu hỏi đã nêu, hy vọng là gì lý do rõ ràng trong trang Q+A :)
lá cờ fr
Câu hỏi là "làm thế nào để áp dụng một bản vá" và câu trả lời của tôi là hoàn toàn hợp lệ, hữu ích và đáp ứng điều đó, cũng như sử dụng chung. Ba trong số các bạn đã đánh giá thấp nó, điều đó có nghĩa là bạn đã giả định bối cảnh cho câu hỏi, cụ thể là bộ kỹ năng và quy trình làm việc mà OP sử dụng. Bất chấp điều đó, bạn đang yêu cầu một người không phải là nhà phát triển "vá" composer.json bằng cách chỉnh sửa thủ công composer.json chỉ để áp dụng "bản vá" cho một mô-đun. Câu trả lời của tôi ở trên hữu ích hơn nhiều đối với *hầu hết* người dùng Drupal.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.