Drupal patch működése

vikicica22 képe

Hello mindenkinek!

Igazából 1-2 patch-et soha nem tudtam feltenni Visual Studio Code segítségével viszont, ha fapados módon* illeszttetem be a bizonyos patch-et a helyére úgy jó lesz.

*Fapados mód = Notepad++ban megnyitottam a file-t ahova beakartam illeszteni a patch-et és ctrl+c majd ctrl+v betettem abba a sorokba a dolgokat, ahova kellet.

Eddig a drupal-9.3.16 használtam és most megjelent a drupal-9.4. Frissítem-e a 3.16-ost a 4.-este de viszont bizonyos patch-ek nem tudok megint feltenni a Visual Studio Code -al.

pl. ezt szeretném használni és nem tudom:
The label "Member for" on user profiles is hardcoded markup that is different from other user fields
https://www.drupal.org/project/drupal/issues/2638250

Visual Studio Code termináljában beírom, hogy

git apply -v member.for-2638250-35.patch

És ez lesz az eredmény:

  1. PS c:\htdocs\drupal> git apply -v member.for-2638250-35.patch
  2. Checking patch core/modules/user/src/Entity/User.php...
  3. error: while searching for:
  4. ->setLabel(t('Created'))
  5. ->setDescription(t('The time that the user was created.'));
  6.  
  7. $fields['changed'] = BaseFieldDefinition::create('changed')
  8. ->setLabel(t('Changed'))
  9. ->setDescription(t('The time that the user was last edited.'))
  10.  
  11. error: patch failed: core/modules/user/src/Entity/User.php:521
  12. error: core/modules/user/src/Entity/User.php: patch does not apply
  13. Checking patch core/modules/user/src/MemberForItem.php...
  14. error: core/modules/user/src/MemberForItem.php: already exists in working directory
  15. Checking patch core/modules/user/user.module...
  16. error: while searching for:
  17. ];
  18. }
  19.  
  20. $fields['user']['user']['display']['member_for'] = [
  21. 'label' => t('Member for'),
  22. 'description' => t("User module 'member for' view element."),
  23. 'weight' => 5,
  24. ];
  25.  
  26. return $fields;
  27. }
  28.  
  29. error: patch failed: core/modules/user/user.module:175
  30. error: core/modules/user/user.module: patch does not apply

Viszont a fapados módszerrel* csinálom úgy meg jó lesz mert látom, működik, amit szerettem volna.

Mit ronthatok el? vagy mivel lehet rávenni, hogy a git apply -v member.for-2638250-35.patch lefusson és működjün úgy mintha kézzel másoltam volna be.

Sajnos a patch-el ilyen gondban vagyok vagyis nem ismerem annyira a működésüket.

Amiket használok:
Xampp
Visual Studio Code
Notepad++

Drupal verzió: 
Balu Ertl képe

Szia, ahogy a #35-ös kommentben geerlingguy írja:

„Attaching re-roll against 8.7.x […]”

Én most gyorsan kipróbáltam:

  • Folt alkalmazódik: 8.7.x, 8.8.x, 8.9.x, 9.0.x, 9.1.x, 9.2.x
  • Nem alkalmazódik: 9.3.x, 9.4.x, 9.5.x

Az semmiképp sem lesz jó hosszútávon, hogy szemmel olvasod a patch fájlt és utána kézzel módosítod a hivatkozott fájl(oka)t. Egyszerűen nem erre van kitalálva. Ezek a folt fájlok a Git saját leíró formátuma, amit mint automatizált segédeszköz, programozottan olvas és ír magának.

0
0