1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/ApolloAuto-apollo

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
CONTRIBUTING.md 6.6 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 26.11.2024 18:11 27a44e0

Как внести свой вклад в Apollo

Соглашения о лицензиях для участников

Приглашаем вас внести свой вклад в проект Apollo. Для этого, пожалуйста, сначала примите [индивидуальное лицензионное соглашение участника Apollo] (https://gist.githubusercontent.com/startcode/f5ccf8887bfc7727a0ae05bf0d601e30/raw/029a11300e987e34a29a9d247ac30caa7f6741a7/Apollo_Individual_Contributor_License_Agreement).

Как начать вносить свой вклад

  • Вы можете следовать стандартному подходу Github, чтобы отправить код. Также есть подробное руководство «Как создать запрос на вытягивание» на английском и китайском.

  • Есть задачи с меткой «требуется помощь», которые помогут вам начать работу.

  • Если вы уже работаете над задачей, оставьте сообщение, чтобы люди знали, что вы работаете над ней.

  • Прежде чем отправлять запрос на проверку, убедитесь, что ваши изменения соответствуют следующим рекомендациям: лицензия, тестирование и стиль кодирования.

Лицензия

Для каждого нового файла добавьте лицензию в начало файла.

  • Пример лицензии для кода на C++: util.h;

  • Пример лицензии для Python-кода: process.py;

  • Пример лицензии для Bash-кода: apollo_base.sh.

Тестирование

Добавьте модульные тесты для предоставленного кода, чтобы доказать, что ваш код работает правильно, и убедитесь, что ваш код не нарушает существующие тесты. Файлы тестов всегда имеют название, оканчивающееся на _test.cc, а имена целевых тестов в файле BUILD всегда заканчиваются на test. Вот пример тестового файла file_test.cc.

Вы можете использовать команду bash apollo.sh test для запуска всех модульных тестов.

Стиль кодирования

  • Стиль кодирования C/C++: Apollo принял Руководство по стилю Google C++. Убедитесь, что ваш код соответствует этому руководству. Вы можете использовать команду bash apollo.sh lint, чтобы проверить, есть ли у вашего кода проблемы со стилем.

  • Стиль программирования на Python: Apollo принял руководство по стилю программирования Google Python. Вы можете использовать команду yapf yapf -i --style='{based_on_style: google}' foo.py, чтобы отформатировать файл foo.py.

  • Лучшие практики кодирования Apollo: также обратитесь к лучшим практикам кодирования Apollo, чтобы узнать больше о дисциплинах кодирования.

  • Стиль оформления файлов BUILD: вы можете использовать команду bash apollo.sh format path/to/BUILD/files, чтобы отформатировать файлы BUILD перед отправкой.

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

Если ваш код сложен для понимания другими участниками, рекомендуется реализовать код в ясной и эффективной форме и предоставить достаточные комментарии и документацию. Apollo использует doxygen для создания форматированного API-документа с помощью команды bash apollo.sh doc generate. Чтобы задокументировать свой код, следуйте руководству: Как документировать код.

Сообщение фиксации

Первая строка сообщения фиксации должна быть однострочным резюме изменения. После резюме можно добавить абзац, чтобы чётко объяснить детали изменения. Если ваш код исправил проблему, добавьте номер проблемы в сообщение фиксации. Пример хорошего сообщения фиксации:

Control: Заменил алгоритм A на алгоритм B в modules/control.

Алгоритм B быстрее, чем A, потому что он использует бинарный поиск. Время выполнения сократилось с O(N) до O(log(N)).

Исправлено #1234

Перед созданием запроса на вытягивание

После того как вы закончите свой код и будете готовы создать запрос на вытягивание, убедитесь, что ваше изменение не нарушит сборку/тестирование/линтинг, выполнив следующие действия: bash apollo.sh check, что эквивалентно комбинации команд bash apollo.ш build, bash apollo.ш test и bash apollo.ш lint.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/ApolloAuto-apollo.git
git@api.gitlife.ru:oschina-mirror/ApolloAuto-apollo.git
oschina-mirror
ApolloAuto-apollo
ApolloAuto-apollo
master