Чи правильно просити учасників оновлення запитів на тягнення на github


25

Я підтримую відносно популярне github repo.

Коли запит на витягнення корисний для злиття, я зазвичай прошу автора повторно встановити його на одній комісії перед тим, як об'єднати його (особливо, коли було кілька невеликих редагувань).

Це хороша практика git? Це прийнятний / стандартний етикет GitHub?

Отож деякі переваги:

  • Я отримую хорошу чисту історію фіксації в журналах фіксування
  • Мені не потрібно змінювати зобов’язання
  • Він делегує частину роботи

Деякі можливі недоліки:

  • Я не впевнений, чи це хороший етикет
  • Я не впевнений, чи це хороша практика git
  • Зазвичай я вже просив ще декілька змін - це ще одна, і я не хочу перешкоджати учасникам.

1
Чи можете ви описати деякі переваги та недоліки, які ви бачите в цьому процесі?
Алекс Фейнман

1
Деякі додаткові переваги та недоліки варто враховувати. добре: git-bisect та інші зворотні зміни простіші, коли кожна фіксація створює стан, який можна скласти чи іншим чином, і такий підхід є простим способом гарантувати це. погано: невеликі зміни за допомогою простих повідомлень про фіксацію перетворюються на мега-коміти. EG "Змінено цей один рядок, щоб виправити кутовий корпус так собі" може потрапити в "Додавання функції foo, великий список змін ". Це ускладнює пошук причини конкретної зміни.
Ганкро

1
Нічого поганого в встановленні стандартів. Просто уточніть заздалегідь, що очікується. Приклад: symfony.com/doc/current/contributing/code/patches.html Прокрутіть до кроку 3: Надішліть свій патч
Cerad

6
@Granko: "Rebase" та "rebase в єдиний комітет" - це два окремих питання.
Меттью Шарлі

2
Якщо учасник попросить це зробити, чи повинен вони перезаписати гілку запиту на виклик git push -f?
Флейм

Відповіді:


16

Що стосується Git, то це щось із святої війни, чи варто просто об'єднувати гілки чи перезавантажувати фіксацію останньої версії гілки, в яку ви зливаєтесь. Існує безліч розмов про те, що краще, якщо ви швидко зробите пошук на Programmers.SE .

Щодо етикету, що стоїть за ним, давайте розглянемо це з практичної точки зору. У роботі з новим кодом, який надходить від когось іншого, завжди краще змусити їх або об'єднати останні зміни з гілки, або свіжо перезавантажити їх перед об'єднанням, щоб забезпечити чисте злиття. Пам'ятайте, що вони написали код, тому вони, як правило, найбільш кваліфіковані для вирішення будь-яких конфліктів злиття / відновлення. Я особисто не бачу проблем з цим і постійно бачу цей запит від інших людей. Для мене, якщо немає конфліктів, то я часто просто роблю це сам, оскільки це два секунди оновлення, яке git може застосувати сам. Але якщо будуть конфлікти, я завжди прошу оригінального автора коду розібратися з ним самі.

Крім того, для GitHub (як мінімум) вони відображатимуть посилання на ваш CONTRIBUTINGфайл над будь-якими спробами PR, щоб зробити гарне місце для того, щоб окреслити ваші очікування, і багато проектів включають, що вони об'єднуватимуться лише до сучасних гілок.


+1 за залучення до дискусії прагматизму. Так, у цьому вся суть. Вирішити складні конфлікти у великих запитах на тягнення може бути досить важко, особливо якщо задіяно певну кількість комітетів. Ось у цьому випадку слід попросити оригінального автора прозвучати. ​​Прості конфлікти - це не проблема, вони ніколи не були і ніколи не будуть.
JensG

1
+1 за те, що насправді дає відповідь, а не лише коментарі!
Паблохім
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.