Должен ли сопровождающий github переписать автора в запросах на получение доступа?

44

Я не программист по профессии, но я немного программирую и использую github. Я столкнулся с неожиданной ситуацией. Я очень знаком с Git.

Есть проект, в котором я обнаружил (маленькую) ошибку, которая меня затронула. Я провел день, находя и исправляя это. Я раздвоил репозиторий, зафиксировал изменение и выдал запрос на удаление. Увидев, что он был закрыт как «Объединен с веткой разработки», я понял, что все хорошо.

Я просматривал репо сегодня, готовясь удалить свою ветку, и я не могу найти, где фиксация была объединена с репозиторием сопровождающего. Через некоторое время я понимаю, что он был добавлен как коммит, но автор больше не я.

Насколько я могу сказать, единственный способ сделать это состоит в том, чтобы специально использовать перебазирование, исправление или другое переписывание истории, чтобы удалить первоначального автора.

Это кажется мне очень неправильным. В лучшем случае это сбивает с толку, в худшем случае автор этого репо берет на себя ответственность за все коммиты, а затем история оригинального участника теряется. Опять же, это небольшая ошибка, я не использую это для своего профессионального резюме, это просто кажется нечестным.

Это нормально? Должен ли я сказать что-нибудь об этом?

Изменить: общее ощущение, что я должен пойти спросить, поэтому я сделаю это сегодня утром.

Согласно запросу ниже. Я проверил, и мой код существует и был применен точно так, как я его написал (включая комментарий). Я проверил, что и коммиттер, и автор были изменены. В то же время, что и мои изменения, было добавлено еще одно изменение. Это одна строка, которая будет влиять на патч так же, как и на другой код перед ним. То есть добавление в одну строку не связано с ошибкой, которую я исправлял.

Обновление Похоже, ответ был таков: автор поддерживает ветку разработки и не хочет сливаться со своей мастер-веткой в ​​нее. Он повторно написал мой коммит, чтобы избежать слияния. Меня не интересовала оригинальная ветка b / c git, достаточно мощная, чтобы выбирать, перебирать и объединять коммиты по мере необходимости.

Это типично для GitHub?
Должен ли я связаться с сопровождающим проекта, чтобы спросить, к какой ветви применять исправления?

user1585512
источник
7
+1 за поднятие этического вопроса о кодировании :) Интерес к выяснению, является ли это поведением по умолчанию, кажется, что сопровождающий делает для этого немного больше работы. Или это произойдет, если сопровождающий слегка изменил ваш коммит после принятия вашего запроса извлечения?
Сунил Д.
Это хороший вопрос. Я не достаточно знаком с GitHub, чтобы ответить, что нормально . Тем не менее, я думаю, что можно выбрать вишню с помощью опции -n, внести изменения, а затем зафиксировать. Эффективно меняя автора.
4
Возможно, сопровождающий применил ваше изменение вручную, а не объединил его. Я предлагаю спросить сопровождающего об этом (не обвиняя его / ее в нечестности).
Кит Томпсон
6
Просто чтобы быть понятным, это «автор», который изменился, правильно? Не "коммиттер"? Я только спрашиваю, потому что различие чрезвычайно важно, когда речь идет об этике кодового плагиата.
Кристофер
2
Вы не говорите, насколько велико было исправление (строки кода) или как лицензируется код, но, возможно, это также может быть нарушением ваших авторских прав.
Джейди

Ответы:

20

Нет, они не должны, если их можно избежать. Это проблема, которая по моему опыту случается слишком часто. Однако я считаю, что это больше связано с незнанием того, как правильно использовать git, чем с тем, кто хочет украсть кредит.

  • Если они хотят изменить ваше изменение, прежде чем применить его к своей основной ветке, они могут легко создать ветку для вашего изменения. Затем они могут добавить свой коммит после вашего и затем объединить ветку в.
  • Если ваш запрос извлечения не основан на последней версии их основной ветви, он может выдать git rebase master. Если есть конфликты, они могут либо решить сами конфликты (без смены автора), либо дать вам возможность исправить их.

Я думаю, что Github мог и должен искать такого рода кражу кредитов и обучать сопровождающих передовым методам, когда это необходимо.

Gerry
источник
6

Вы пропустили некоторые ключевые детали здесь.

  • Если способ, которым вы «исправили» ошибку, был не по вкусу сопровождающим или даже неправильным в том смысле, что он вводил свои собственные ошибки, тогда сопровождающему, возможно, пришлось редактировать вашу работу перед фиксацией. В этом случае понятно, сменить автора.

  • Как уже упоминали другие, автор сильно отличается от коммиттера . Как вы, возможно, уже знаете, автор - тот, кто фактически создал коммит, а коммиттер - тот, кто его применяет.

Вы должны внимательно посмотреть на коммит и обновить ваш вопрос с вашими выводами.

Стивен Пенни
источник
1
Я просто пошел проверить это. В моем патче нет изменений. Ранее было изменение на 1 строку, которое не было связано с моим патчем, который был добавлен одновременно.
user1585512
3

Кажется, ответ был таков: автор поддерживает ветку разработки и не хочет сливаться со своей основной веткой в ​​нее. Он повторно написал мой коммит, чтобы избежать слияния.

user1585512
источник
12
Тогда они должны были использовать git cherry-pick.
svick
3

Чтобы ответить на ваш обновленный вопрос:

Трудно сказать, что типично для github, кроме того, что обычно каждый проект отличается от другого и у каждого свой предпочтительный рабочий процесс. Как правило, перед отправкой запроса на удаление лучше всего спросить, каков их рабочий процесс, или попытаться выяснить, можете ли вы сказать, основываясь на предыдущих закрытых запросах.

Мой личный опыт показывает, что если вы не спросите, обычно они в лучшем случае закрывают запрос на извлечение без комментариев (в худшем случае), либо в лучшем случае оставляют комментарий, объясняющий процедуру, запрашивающую обновление вашего запроса. Я скажу, что это кажется странным, как сопровождающий в вашем случае справился с этим, но, возможно, это был просто путь наименьшего сопротивления для них. Я сомневаюсь, что это было намеренно предназначено, чтобы украсть кредит все же.

Я бы посоветовал вам попросить сопровождающего добавить документацию, объясняющую, как они хотели бы получать запросы на извлечение и в какой отрасли, чтобы избежать путаницы и недостатка кредита в будущем. Я бы хотел, чтобы при наличии этой документации было больше проектов, так как я думаю, что это сделало бы людей более склонными к участию в проекте.

Джейкоб Шон
источник