Вступ до GIT Cherry-pick
У цій статті ми детально дізнаємось про GIT Cherry-pick. Є багато програмістів, які працюють над однією розробкою програмного забезпечення з різних куточків світу. Тоді як керувати кодами? Як вони змусять інших зрозуміти, які зміни вони внесли? Як ввести коди та підтримувати різні версії? Як об'єднати коди?
Щоб вирішити ці проблеми, GIT вийшов у світ розвитку. GIT - це видатна система управління вихідним кодом (SCM) та розподілена система управління версіями. GIT був створений Linux Torvald, людиною, яка розробила ядро Linux. Очевидно, це інструмент з відкритим кодом, де кожен програміст може зробити свій внесок у створення програмного забезпечення з будь-якої точки світу.
GIT має багато можливостей. Він може мати кілька гілок. Розробник може записувати коди після створення власної гілки в локальній системі та об'єднувати її з головним відділенням або іншими гілками віддаленого сховища GIT.
Що таке GIT Cherry-pick?
Уявіть, триває робота над проектом, щоб написати сценарій з історії та еволюції стільникових телефонів. Отже, є багато людей, які працюють над одним проектом, і всі працюють окремо. Однак, врешті-решт, всі сценарії будуть складені разом.
Зараз член А пише про телефони Apple і раптом розуміє, що це може бути кращим. Тож він повідомив про це питання іншим членам команди, які працюють над тим самим проектом. Інший учасник X сказав йому, що пише сценарій на телефонах Android, і попросив члена А ознайомитися.
Тоді член А заглянув у сценарій товариша по команді і виявив, що деякі частини однакові з деякими змінами, які справді хороші. Тому він вибирав ці зміни і вставляв за власним сценарієм. Це те саме, що називається вишневим підходом у GIT у галузі кодування програмного забезпечення.
Git-cherry-pick - це потужна команда git, і збирання вишні - це процес вибору комісії з гілки та застосування її до якоїсь іншої гілки. Простими словами, може бути кілька відділень, де розробники здійснюють свої коди. Тепер один розробник повинен був ввести свої коди у відділенні A, однак він вчинив коди у гілці B помилково. У цей час вишня вибору може переключити команду на правильну гілку.
Використовуйте команду нижче (в системі Unix), щоб знати різні варіанти git-cherry-pick,
Команда:
$man git-cherry-pick
Синтаксис команди вишня вибору,
Синтаксис:
git cherry-pick (–edit) (-n) (-m parent-number) (-x)
Коли ми використовуємо GIT Cherry-pick?
Вибір гіт-вишні - корисний інструмент, проте не найкраща практика для всіх часів. git-cherry-pick можна використовувати в наступних сценаріях,
- Щоб зробити це правильним, коли вчинення, зроблене в іншій гілці випадково.
- Переважні традиційні злиття
- Застосувати зміни в існуючому комітеті.
- Дублікат фіксації
- Виправлення помилок
Як працює GIT Cherry-pick?
Дефект, знайдений у коді у виробничому середовищі та має бути виправлений. Після внесення змін та усунення дефекту тепер прийшов час повернути цю зміну коду до середовища розробки, щоб дефект не виникав знову і знову у виробничому середовищі в майбутньому.
Перший варіант - просте злиття git, і це ідеальне рішення, якщо воно працює. Однак в виробничому середовищі також є інші зміни, які не можуть бути повернені до середовища розвитку під час об'єднання. І в цьому випадку вишня-вибір - це правильний варіант.
Cherry-pick приносить той фіксатор, який було зроблено лише для виправлення помилок. Інші зобов'язання не вибирають.
Ось ілюстрація,
Рис. 1: G і H - галузь виробництва. Відділ A до F Development здійснює. Проблема виявлена у виробничій галузі. Виправлення розробляється в H-комітеті, який потрібно застосувати у галузі розвитку, але прихильність G не застосовується.
Фіг.2: Тепер фіксація Н вишня вибирається на гілці розвитку, і в результаті комірка - Н '. Зміна G зміни не включаються до галузі розвитку.
Як використовувати GIT Cherry-pick з прикладом?
Припустимо, у нас є дві гілки (master та new_feature) (команда використовується для перегляду гілки гілки-git)
Ми взяли на себе зобов’язання (виділено) у відділенні new_feature помилково. (команда використовується для перегляду скоєного журналу log-git)
Однак він мав бути лише у головній галузі. Спочатку скопіюйте виділений SHA у блокнот.
Тепер ми будемо використовувати команду git-cherry-pick для переміщення цього присвоєння до головного відділення, однак перед цим нам потрібно переключитися на головну гілку (команда, що використовується для перемикання відділення на випуск гілки < назва гілки > )
Тепер ми можемо побачити той самий фікс, який доступний у головній гілці (команда used-git log)
Щоб отримати додатковий приклад команд git cherry-pick, перегляньте посилання нижче,
https://git-scm.com/docs/git-cherry-pick
Важливі речі, які слід пам’ятати
Три речі потрібно пам’ятати, використовуючи вишню і працюючи в команді.
1. стандартизувати повідомлення про фіксацію: Краще використовувати стандартизоване повідомлення про фіксацію і -x, якщо ми будемо вибирати з публічної гілки.
git cherry-pick -x
Це дозволить уникнути злиття конфлікту в майбутньому.
2. Скопіюйте ноти: Іноді деякі вишні мають нотатки, а коли ми проводимо вишню, ноти не копіюються. Тому краще використовувати його.
git notes copy
3. Вибір декількох комітетів, коли вони є лише лінійними: ми хочемо вибирати кілька команд, таких як G, H (рис. 1), якщо вони лінійні, тоді використовуйте лише команду нижче,
git cherry-pick G^..H
Висновок
Припустимо, ми хочемо взяти певну комісію з іншої гілки та застосувати до поточної гілки. Ось такі кроки рекомендовані,
1. Знайдіть хеш-фікш, який потрібно спершу вибрати.
2. Перейдіть до відділення призначення.
3. git cherry-pick -x
Вирішіть конфлікти, якщо вони трапляться. Якщо в початковому комітеті є нотатки, їх потрібно скопіювати.
git notes copy
Рекомендовані статті
Це керівництво GIT Cherry-pick. Тут ми обговорюємо його роботу та як докладно використовувати гет-вишню з прикладами. Ви також можете переглянути наступні статті, щоб дізнатися більше -
- Git Tools
- Терміналогія Гіт
- Тег Git Checkout
- Що таке гіт гіт?