Лицензионное соглашение
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. Для этого вам необходимо иметь права на попытку. В противном случае попросите рецензента запустить за вас ботов.