Как отправить патч в проект Launchpad?

С фон Git /GitHub и очень мало знаю о VCS Bazaar, я хотел бы иногда сообщать об ошибках для проектов, размещенных на Launchpad, и даже отправлять патч. Я бы хотел сделать это «правильно», чтобы он был готов к слиянию или улучшению, а не к успеху.

Я не могу найти подходящего простого How-to, подходящего для моих нужд.

Что я сделал до сих пор:

  1. Я создал учетную запись Launchpad,

  2. сообщила об ошибке,

  3. установил Bazaar и установил ключи SSH и т. д.

Теперь, если это был GitHub, я бы

  1. fork repo,

  2. клонировать разветвленное репо,

  3. создать здоровую ветку имени и выполнить работу,

  4. commit + push,

  5. создать запрос на перенос с использованием GitHub WUI.

Но это не GitHub, и обе архитектуры Launchpad и Bazaar кажутся совершенно отличными от своих коллег GitHub /Git.

Так могла ли добрая душа спасти меня от утопления в тоннах документов и составить простой шаг, главным образом вторую часть? Возможно, включая соответствующие команды CLI, когда они необходимы?


Изменить: Кажется, я должен уточнить, спрашиваю ли я конкретно о пакетах Ubuntu (что бы это ни значило) или проектах Launchpad.

На самом деле, я не очень люблю различие между пакетами Ubuntu и пакетами, отличными от Ubuntu. Любое программное обеспечение может быть в Ubuntu сегодня и завтра из него, или наоборот. Развитие - это то, что важно гораздо больше, чем распространение.

Итак, я предполагал, что

  • не каждый пакет, распространяемый в Ubuntu, размещен на Launchpad,

  • существует «официальный» или «стандартный» рабочий процесс для Launchpad (хорошо, если все разработчики могут согласитесь на использование Bazaar, почему большинство из них не соглашались на рабочий процесс исправления?),

, поэтому я спрашиваю о пути Launchpad, а не о Ubuntu. И я выбрал AU, потому что, поскольку пересечение обширно, я думаю, это довольно по теме здесь.

17 голосов | спросил Alois Mahdal 7 42013vEurope/Moscow11bEurope/MoscowThu, 07 Nov 2013 23:56:27 +0400 2013, 23:56:27

2 ответа


14

Это проект Launchpad?

(Если вы уже знаете, что это проект Launchpad, вы можете пропустить это.)

Не все проекты, найденные на Launchpad, на самом деле размещены и разработаны там - некоторые из них - это коды кода, размещенные в другом месте (GitHub /Gitorious /etc), другие - от Debian. Эти исходные источники называются «восходящими» проектами, и обычно лучше всего отправлять патчи у источника и позволять изменениям поступать «вниз по течению» в Ubuntu (обычно в следующей версии).

На странице проекта должно быть четко указано, размещено ли оно в другом месте или на Launchpad. Если нет, просто спросите у сопровождающих проекта, как они хотят получать изменения. Некоторые проекты, связанные с восходящим потоком, предпочитают простые файлы патчей, другие предпочитают отправлять /нажимать через их соответствующие хосты.

В качестве специального примечания официальные пакеты Ubuntu (программное обеспечение, хранящееся в официальных репозиториях Ubuntu, которые вы можете установить из Software Center) имеют несколько разных способов отправки патчей, так как многие из этих пакетов поступают непосредственно из Debian, и в идеале фиксироваться там, а не только в Ubuntu. (Это еще один вопрос.)

Как отправить патч

Общий способ отправки патча заключается в том, что вы делаете свою ветку, фиксируете ее локально и нажимаете на Launchpad:

bzr push lp:~user/project/branch-name

Затем вы можете предложить своей ветке объединиться с родителем, с которого вы разветвлялись, либо через веб-сайт, либо с помощью команды bzr lp-propose .

Если вы зарегистрировали ошибку, и ваша ветка исправляет ее, обязательно выполняйте следующее при совершении, где 000000 заменяется номером вашей ошибки, предполагая, что это ошибка, сообщаемая на Launchpad, а не где-то в другом месте.

bzr commit --fixes=lp:000000

Заметка о рабочем процессе по умолчанию

Это в значительной степени типичный современный рабочий процесс , который вы можете сравнить с GitHub. Однако Launchpad был немного длиннее, поэтому этот рабочий процесс развивался после факта, а не был встроен в систему с самого начала, поэтому некоторые старые проекты могут полагаться на другие методы принятия патчей. Тем не менее, большинство новых проектов полагаются на этот рабочий процесс, где на GitHub всегда присутствуют «запросы на тягу», и люди просто по умолчанию используют его, потому что никогда не было средств для чего-то другого в GitHub.

ответил dobey 8 52013vEurope/Moscow11bEurope/MoscowFri, 08 Nov 2013 00:38:09 +0400 2013, 00:38:09
7

Внутренний ответ основан на ответе dobey здесь и Ответ Хорхе Кастро на конкретный проект. Редактирование /исправления /предложения приветствуются.

  1. Создайте учетную запись Launchpad. Это будет включать имя пользователя Launchpad (LP-USER)

  2. Добавьте свой SSH-ключ к панели запуска в https://launchpad.net/~LP-USER/+editsshkeys

  3. На Launchpad обратите внимание на название проекта (PROJECT-NAME).

  4. Сообщить о проблеме с проектом. Проблеме будет присвоен номер ошибки (000000).

  5. Убедитесь, что Bazaar установлен dpkg-query -l bzr. Возможно, вы захотите прочитать интеграцию Bazaar /Launchpad .

  6. настроить bzr с помощью ---- +: = 5 =: + ---- и bzr whoami "Your Name <[email protected]>"

  7. На вашей машине проверьте локальную ветвь проекта

    bzr launchpad-login LP-USER

    (Это создаст папку под названием bzr branch lp:PROJECT-NAME , содержащую последний код проекта.)

  8. Получить проект. Вносить изменения. Проверьте свои изменения. (Эти шаги зависят от проектов и проблем.)

  9. Зафиксируйте свои изменения, включая номер ошибки (PROJECT-NAME).

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

  11. Вставьте изменения в Launchpad. (Это создаст новую удаленную ветку, связанную с вашей учетной записью.)

    bzr commit --fixes=lp:000000
    

    (bzr push lp:~LP-USER/PROJECT-NAME/NEW-BRANCH-NAME должно быть короткое описательное имя проблемы с исправленной /добавленной функцией)

  12. Откройте ветку в своем браузере с помощью NEW-BRANCH-NAME или перейдя в bzr lp-open

  13. Предложите слияние с https://code.launchpad.net/~LP-USER/PROJECT-NAME/NEW-BRANCH-NAME/ или с URL на последнем шаге, выбрав «Предложить для слияния», добавив описание, вставьте bzr lp-propose для ветви, которую вы хотите предложить, и нажмите Submit .

ответил d3vid 27 32013vEurope/Moscow11bEurope/MoscowWed, 27 Nov 2013 12:15:17 +0400 2013, 12:15:17

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132