Я хочу виправити помилку. З чого я починаю?


47

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

Я ознайомився зі списком кампанії по перекусу, і мені довелося встановити, що більшість із них мені не так легко виправити, тому що я підозрюю, що їм потрібно багато часу, щоб розібратися у цьому питанні, і у мене цього немає. Я все-таки виявив це, і це виглядає керованим, і мені подобається класна функція.

Оскільки я ніколи не писав патч і не випускав програму на природу, я не маю ідеї з чого почати. Що має бути моїм першим кроком для вирішення цієї проблеми?

Підсумок: Де і як почати виправляти цього хлопця?


1
який твій фон? Чи знайомі ви з системами управління версіями? У практиці пакування?
пігабриель

Ні, ще не знайомий з цим! Ми можемо змінити ...
Інго

Відповіді:


31

Відповідь на це питання може отримати довгий і складний характер, тому я замість цього хочу вказати на наявні ресурси, а не переробляти їх тут.

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

  1. Налаштування для розробки Ubuntu
  2. Як виправляти помилки

Підручники

Ми проводимо події протягом усього циклу, щоб допомогти людям так само, як і ви, зокрема ми проводимо тиждень розробника Ubuntu в IRC, який є навчальним посібником та семінаром "Питання та відповіді". Є кінець лютого, якщо ви хочете приєднатися!

Ось два журнали минулого сеансу, щоб дати вам уявлення:

Місця пошуку можливостей

  • Збір врожаю - цей інструмент проходить всі патчі та пакети в Launchpad (і навіть шукає в інших дистрибутивах) для патчів. Багато з них можна зафіксувати, застосувати, протестувати, а потім виправити в Ubuntu і потім відправити вгору за течією.
  • Cleansweep - Список патчів, що знаходяться в Launchpad, які хтось додав до звіту про помилку. Вони можуть бути корисними чи ні, їх все-таки слід переглянути.

Отримання довідки

Зв’язатися з MOTU у списку розсилки або IRC - це хороший спосіб отримати допомогу у вирішенні окремих проблем:

Відгуки

Ми витратили багато часу на переробку цієї документації, щоб зробити її максимально простою, якщо ви будете робити замітки про свій досвід і як ми можемо покращити цей матеріал, було б дуже корисно знати, як зробити так, щоб він менше смоктав для таких людей, як ви.


19

Узагальнена відповідь Хорхе - це чудове вступ до стрибків у розробці Ubuntu, але давайте спробуємо трохи детальніше розглянути ваші конкретні проблеми ...

Основний розробник Apport та сервіс Ubuntu - одне і те ж. Це трохи спрощує вам справи. Замість того, щоб дізнаватися про упаковки та патч-системи, найпростіший шлях тут - працювати безпосередньо над висхідним кодом.

Розробка Apport розміщується на Launchpad . Він використовує базарну систему управління версіями для управління своїм вихідним кодом. Перший крок до виправлення вашої помилки - це схопити джерело. Якщо ви раніше не використовували базар, базар за п'ять хвилин підручник - це гарне місце для початку.

Встановіть базар за допомогою:

sudo apt-get install bzr

Витягніть вихідний код apport:

bzr branch lp:apport

Тепер ви можете розпочати хакерство. Як і у більшості ДКС, під час роботи з базаром, добре робити лише одну зміну за комісію. Ви також повинні зробити свої повідомлення про вчинення інформативними. Це робить ваші зміни набагато простішими для перегляду. Коли ви готові зробити своє перше зобов'язання, запустіть:

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

Продовжуйте вносити зміни та зобов’язуватися, поки ви не переконаєтесь, що помилка виправлена. Під час останньої фіксації ви також можете позначити її як виправлення помилки, додавши --fixes lp:<bug_number>до команди команду. Тепер ви готові надіслати свої зміни для розгляду та включення.

Спочатку вам потрібно натиснути його на Launchpad, щоб зробити його загальнодоступним:

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

Зараз ваше відділення можна знайти за адресою:

https://code.launchpad.net/~<launchpad_username>/apport/<branch_name>/

Запуск bzr lp-openу відділенні відкриє це місце у веб-переглядачі.

Тепер ми хочемо запропонувати об'єднання. На цій сторінці виберіть "Пропозиція для об'єднання".

пропонувати для злиття

На наступній сторінці виберіть цільову гілку та огляньте зміни.

описати злиття

Тепер у вас буде активна пропозиція щодо об’єднання.

активний огляд

Обслуговуючі переглянуть ваші зміни. Якщо вони підходять, вони будуть об'єднані та доступні у наступному випуску. Крім того, пропозиція може бути встановлена ​​на "Необхідна робота", і технічне обслуговування обговорить з вами додаткові зміни, які слід внести до об'єднання. Якщо це трапиться, будь ласка, не сприймайте це як будь-яке особисте відмову від вашої роботи. Коли ви вперше працюєте в новому проекті, часто є такі дрібниці, як стиль кодування, про які ви можете не знати.

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