Участие в проекте WebRTC

Лицензионное соглашение

WebRTC приветствует исправления/исправления функций и исправлений ошибок!

Для участников, не связанных с Google, следуйте инструкциям, приведенным в Лицензионном соглашении индивидуального автора Google . Во всех случаях участники должны подписать лицензионное соглашение, прежде чем вклад может быть принят. Пожалуйста, заполните соглашение для физического или юридического лица в зависимости от ситуации.

Предоставление образцов

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

При создании нового образца или обновлении существующего не забудьте также создать или обновить существующие тесты. Все тесты в этом репозитории реализованы как UI-тесты Nightwatch.JS, поэтому используйте тот же дизайн в своем собственном.

Инструкции

Публикация вашего первого патча

Вам необходимо провести некоторую подготовку, чтобы загрузить свой первый CL:

  • Проверьте и создайте код
  • Заполнить Контрибуторское соглашение (см. выше)
  • Если вы никогда раньше не отправляли код, вам необходимо добавить свое имя (или имя своей организации, если соглашение с автором подписано вашей организацией) и контактную информацию в файл AUTHORS.
  • Перейдите на https://webrtc.googlesource.com/new-password и войдите под своей учетной записью электронной почты. Это должна быть та же учетная запись, которую возвращает git config user.email
  • Затем запустите: git cl creds-check . Если у вас возникнут какие-либо ошибки, обратитесь за помощью на обсуждение-webrtc.

Вам не придется повторять вышесказанное. После всего этого вы готовы к загрузке:

Загрузка вашего первого патча

Теперь, когда у вас настроена учетная запись, вы можете выполнить фактическую загрузку:

  • Сделайте это:

    • Предполагая, что вы находитесь в основной ветке:
      • git checkout -b my-work-branch
    • Вносите изменения, собирайте локально, запускайте тесты локально

      • git commit -am "Changed x, and it is working"
      • git cl upload

      Откроется текстовый редактор, показывающий все локальные сообщения о фиксации, что позволит вам изменить его до того, как он станет описанием CL.

      Заполните запись об ошибке правильно. Укажите префикс системы отслеживания проблем и номер проблемы, разделенные двоеточием, например webrtc:123 или chromium:12345 . Если у вас нет префикса отслеживания проблем и номера проблемы, просто добавьте None .

      Сохраните и закройте файл, чтобы продолжить загрузку на сервер проверки кода WebRTC.

      Команда напечатает ссылку вида https://webrtc-review.googlesource.com/c/src/+/53121 . если все пойдет хорошо.

  • Нажмите на эту ссылку CL

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

  • Нажмите «Начать проверку» и добавьте рецензента. Вы можете найти рецензентов в файлах OWNERS в репозитории (выберите того, который ближе всего к вашим изменениям)

  • Отвечайте на любые отзывы рецензентов:

    • Вносите изменения, собирайте локально, запускайте тесты локально
      • git commit -am "Fixed X and Y"
      • git cl upload
  • Как только рецензент LGTM (одобрит) патч, попросите его поместить его в очередь фиксации.

ВНИМАНИЕ. В Windows вам необходимо запустить описанное выше в оболочке Git bash, чтобы gclient нашел файл .gitcookies .

Триботы

Если вы много работаете в WebRTC, вы можете подать заявку на получение прав на пробную версию . Это означает, что вы можете запускать trybots , которые запускают все тесты на всех платформах. Для этого сообщите об ошибке на bugs.webrtc.org и попросите команду EngProd предоставить вам право на пробную версию.

Чтобы запустить пробное задание, загрузите CL, как описано выше, и нажмите «Пробный прогон CQ» или «Выбрать Trybots» в пользовательском интерфейсе Gerrit. Для этого вам необходимо иметь права на попытку. В противном случае попросите рецензента запустить за вас ботов.