Советы начинающим вкладчикам¶
Новый вкладчик и не знаете, что делать? Хотите помочь, но не знаете, как начать? Этот раздел для вас.
Приступайте к работе!
Если вы только начинаете вносить свой вклад в Django, учебник Написание вашего первого патча для Django даст вам представление об инструментах и рабочем процессе.
Эта страница содержит более общие советы о том, как вы можете внести свой вклад в Django, и как к этому подойти.
Если вы ищете справочник по деталям внесения кода, обратитесь к документации Написание кода.
Первые шаги¶
Начните с этих шагов, чтобы познакомиться с процессом разработки Django.
- Талоны на лечение - Если unreviewed ticket сообщает об ошибке, попробуйте воспроизвести ее. Если вы можете воспроизвести ошибку и она кажется достоверной, сделайте пометку, что вы подтвердили ошибку, и примите тикет. Убедитесь, что билет подан в правильную область компонента. Рассмотрите возможность написания патча, добавляющего тест на поведение ошибки, даже если вы не исправляете саму ошибку. Смотрите больше на Как я могу помочь с сортировкой? 
- Поиск принятых тикетов и просмотр патчей для ознакомления с кодовой базой и процессом - Пометьте соответствующие флаги, если патч нуждается в документации или тестах. Просмотрите изменения, которые вносит патч, и обратите внимание на синтаксис, несовместимый со старыми, но все еще поддерживаемыми версиями Python. Run the tests и убедитесь, что они проходят. Там, где это возможно и уместно, опробуйте их на базе данных, отличной от SQLite. Оставляйте комментарии и отзывы! 
- Поддерживайте старые патчи в актуальном состоянии - Зачастую кодовая база меняется в период между отправкой исправления и его рассмотрением. Убедитесь, что патч по-прежнему применяется чисто и функционирует так, как ожидается. Обновление патча - это и полезно, и важно! Смотрите больше на Представление исправлений. 
- Написать документацию - Документация Django великолепна, но ее всегда можно улучшить. Вы нашли опечатку? Вы считаете, что что-то должно быть разъяснено? Давайте, предложите исправление документации! Смотрите также руководство по Написание документации. - Примечание - В reports page содержатся ссылки на множество полезных запросов Trac, включая несколько, полезных для сортировки тикетов и проверки патчей, как было предложено выше. 
- Подпишите лицензионное соглашение с вкладчиком - Код, который вы пишете, принадлежит вам или вашему работодателю. Если ваш вклад составляет более одной-двух строк кода, вам необходимо подписать CLA. См. Contributor License Agreement FAQ для более подробного объяснения. 
Руководящие принципы¶
Будучи новичком в большом проекте, легко испытать разочарование. Вот несколько советов, которые помогут сделать вашу работу над Django более полезной и плодотворной.
- Выберите предметную область, которая вам интересна, с которой вы знакомы или о которой вы хотите узнать - Вам не обязательно быть экспертом в той области, над которой вы хотите работать; вы становитесь экспертом благодаря своему постоянному вкладу в код. 
- Анализировать контекст и историю билетов - Trac не является абсолютом; контекст так же важен, как и слова. Читая Trac, вы должны принимать во внимание, кто и когда говорит те или иные вещи. Поддержка идеи два года назад не обязательно означает, что эта идея будет поддерживаться и сейчас. Вам также нужно обратить внимание на то, кто не говорил - например, если опытный контрибьютор не был недавно вовлечен в обсуждение, то билет может не иметь поддержки, необходимой для работы с Django. 
- Начните с малого - Легче получить обратную связь по маленькому вопросу, чем по большому. Смотрите easy pickings. 
- Если вы собираетесь взяться за большое дело, сначала убедитесь, что ваша идея получила поддержку - Это означает, что перед устранением ошибки необходимо получить подтверждение от другого человека, что она действительно существует, а также убедиться в том, что предложенная функция согласована, прежде чем приступать к ее реализации. 
- Будьте смелее! Оставляйте отзывы! - Иногда бывает страшно вынести свое мнение на всеобщее обозрение и сказать «этот билет правильный» или «этот патч требует доработки», но только так проект движется вперед. Вклад всего сообщества Django в конечном итоге имеет гораздо большее влияние, чем вклад одного человека. Мы не сможем сделать это без вас! 
- Примите меры предосторожности при пометке вещей «Готово к регистрации « - Если вы действительно не уверены, что билет готов, не отмечайте его как таковой. Вместо этого оставьте комментарий, сообщив другим о своих мыслях. Если вы в основном уверены, но не полностью, вы также можете попробовать спросить в IRC, чтобы узнать, может ли кто-то еще подтвердить ваши подозрения. 
- Ждите обратной связи и отвечайте на полученную обратную связь - Сосредоточьтесь на одном или двух билетах, проведите их от начала до конца и повторите. Подход «дробовика», когда вы беретесь за множество заявок и позволяете некоторым из них остаться без внимания, в итоге приносит больше вреда, чем пользы. 
- Будьте строгими - Когда мы говорим «PEP 8, и должен иметь документацию и тесты», мы имеем в виду именно это. Если у патча нет документации и тестов, то на это должна быть веская причина. Аргументы типа «Я не смог найти ни одного существующего теста этой функции» не имеют большого веса - хотя это может быть правдой, это означает, что у вас есть очень важная работа по написанию самых первых тестов для этой функции, а не то, что вы получаете освобождение от написания тестов вообще. 
- Наберитесь терпения - Не всегда бывает просто быстро рассмотреть ваш билет или патч. Это не личное. Есть много тикетов и запросов на исправление, которые нужно пройти. - Поддерживать актуальность вашего патча очень важно. Просмотрите тикет на Trac, чтобы убедиться, что флаги Нужны тесты, Нужна документация и Патч нуждается в улучшении сняты после того, как вы устранили все замечания рецензентов. - Помните, что цикл выпуска Django составляет 8 месяцев, поэтому у вас будет достаточно времени, чтобы ваш патч был рассмотрен. - Наконец, может помочь своевременное напоминание. Идеи см. здесь contributing code FAQ.