Я хочу исправить ошибку. С чего мне начать?

Хотя я не профессиональный программист, я написал программу или две. Тем не менее, в настоящее время каждый инженер и ученый тоже немного учатся программировать, и поэтому я привык писать программы на Python, C и MATLAB. Теперь я хочу немного рассказать об Ubuntu и его замечательных людях и исправить ошибку!

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

Поскольку я никогда раньше не писал патчи и не выпускал программы в дикой природе, я понятия не имею, с чего начать. Каким должен быть мой первый шаг к решению этой проблемы?

Итог: Где и как начать исправлять этого парня?

47
задан 13 June 2012 в 18:41

2 ответа

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

Документация

  1. Подготовка к установке для разработки Ubuntu
  2. Как исправить ошибки

Учебники

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

Вот два журнала из прошлого сеанса, чтобы дать вам представление:

Места для поиска возможностей

  • Harvest - этот инструмент просматривает все исправления и пакеты в Launchpad (и даже ищет исправления в других дистрибутивах).Многие из них могут быть обнаружены, применены, протестированы, а затем исправлены в Ubuntu, а затем отправлены вверх по течению.
  • Cleansweep - Список исправлений, находящихся на Launchpad, которые кто-то прикрепил к отчету об ошибке. Они могут быть полезны или нет, но на них все же стоит обратить внимание.

Получение помощи

Обращение к MOTU в списке рассылки или IRC - хороший способ получить помощь по отдельным проблемам, с которыми вы сталкиваетесь:

Feedback

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

31
ответ дан 13 June 2012 в 18:41

Обобщенный ответ Хорхе - отличное введение в переход к разработке Ubuntu, но давайте попробуем немного подробнее рассмотреть вашу конкретную проблему ...

Apport's main разработчик основной ветки разработки и сопровождающий Ubuntu - одно и то же. Это немного упрощает вам жизнь. Вместо того, чтобы изучать пакеты и системы исправлений, проще всего работать непосредственно с исходным кодом.

Разработка Apport ведется на Launchpad . Он использует распределенную систему контроля версий bazaar для управления своим исходным кодом. Первым шагом к исправлению вашей ошибки является получение исходного кода. Если вы раньше не пользовались базаром, то учебник за пять минут - хорошее место для начала.

Установите базар с помощью:

sudo apt-get install bzr

Получите исходный код аппорта:

bzr branch lp:apport

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

bzr commit -m "My commit message. Did foo to bar in order to achieve baz."

Продолжайте вносить изменения и коммиты, пока не убедитесь, что ваша ошибка исправлена. В своем последнем коммите вы также можете пометить его как исправление ошибки, добавив - fixes lp: к команде фиксации. Теперь вы готовы отправить свои изменения на рассмотрение и включение.

Во-первых, вам нужно отправить его на Launchpad, чтобы сделать его общедоступным:

bzr push lp:~<launchpad_username>/apport/<branch_name>

Теперь вашу ветку можно найти по адресу:

https: / /code.launchpad.net/~/apport//[12206 sizes Запуск bzr lp-open в ветке откроет это место в браузере.

Теперь мы хотим, чтобы предложить слияние. На этой странице выберите «Предложить слияние».

propose for merging

На следующей странице выберите целевую ветвь и дайте обзор ваших изменений.

describe merge

Теперь у вас будет активное предложение о слиянии.

active review

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

19
ответ дан 13 June 2012 в 18:41

Другие вопросы по тегам:

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