WebRTC 프로젝트에 참여

라이선스 계약

WebRTC가 기능 및 버그 수정을 위한 패치/가져오기를 환영합니다.

Google 외부의 참여자는 Google 개인 재능기부자 라이선스 계약에 제공된 안내를 따르세요. 어떠한 경우든 참여자는 참여자 라이선스 계약에 서명해야 참여할 수 있습니다. 필요에 따라 개인 또는 기업의 계약을 완료하세요.

기여 샘플

새 샘플을 추가하거나 기존 샘플을 크게 변경하려면 먼저 Google에서 세부정보를 논의할 수 있는 새 문제를 만드는 것이 좋습니다.

새 샘플을 만들거나 기존 샘플을 업데이트할 때는 기존 테스트도 만들거나 업데이트해야 합니다. 이 저장소의 모든 테스트는 Nightwatch.JS UI 테스트로 구현되므로 자체 설계와 동일한 설계를 따르세요.

안내

첫 패치 출시

첫 CL을 업로드하려면 다음과 같은 몇 가지 준비를 해야 합니다.

  • 코드 확인 및 빌드
  • Contributor 계약 작성 (위 참고)
  • 이전에 코드를 제출한 적이 없다면 사용자(또는 조직에서 참여자 계약에 서명한 경우 조직의 이름)와 연락처 정보를 AUTHORS 파일에 추가해야 합니다.
  • https://webrtc.googlesource.com/new-password로 이동하여 이메일 계정으로 로그인합니다. git config user.email에서 반환된 계정과 동일해야 합니다.
  • 그런 다음 git cl creds-check를 실행합니다. 오류가 발생하는 경우 discuss-webrtc에 도움을 요청하세요.

위의 과정을 반복할 필요가 없습니다. 이제 다음과 같은 방법으로 업로드할 준비가 되었습니다.

첫 번째 패치 업로드

계정이 설정되었으므로 다음과 같이 실제 업로드를 수행할 수 있습니다.

  • 작업 선택:

    • 기본 분기에 있다고 가정합니다.
      • git checkout -b my-work-branch
    • 변경사항을 적용하고 로컬로 빌드하고 테스트를 로컬에서 실행

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

      그러면 로컬 로컬 메시지가 모두 표시되는 텍스트 편집기가 열리고 CL 설명이 되기 전에 수정할 수 있습니다.

      버그 항목을 올바르게 작성합니다. Issue Tracker 프리픽스와 문제 번호를 콜론으로 구분하여 지정하세요(예: webrtc:123 또는 chromium:12345). Issue Tracker 프리픽스가 없고 문제 번호는 None을 추가합니다.

      파일을 저장하고 닫아 WebRTC 코드 검토 서버에 대한 업로드를 진행합니다.

      명령어가 제대로 작동한다면 https://webrtc-review.googlesource.com/c/src/+/53121과 같은 링크를 출력합니다.

  • 이 CL 링크 클릭

  • 로그인하지 않았다면 오른쪽 상단의 로그인 버튼을 클릭하고 이메일로 로그인하세요.

  • 리뷰 시작을 클릭하고 리뷰 작성자를 추가합니다. 저장소 주변의 OWNERS 파일에서 검토자를 찾을 수 있습니다 (변경사항에 가장 가까운 리뷰 가져오기).

  • 리뷰 작성자의 의견을 처리합니다.

    • 변경사항을 적용하고 로컬로 빌드하고 테스트를 로컬에서 실행
      • git commit -am "Fixed X and Y"
      • git cl upload
  • 검토자 LGTM이 패치를 승인하면 커밋 대기열에 추가하도록 요청합니다.

참고: Windows에서는 gclient가 .gitcookies 파일을 찾을 수 있도록 위 Git bash 셸에서 위의 명령어를 실행해야 합니다.

Trybots

WebRTC에서 많은 업무를 맡은 경우 시도 권리를 신청할 수 있습니다. 즉, 모든 플랫폼에서 모든 테스트를 실행하는 trybots를 실행할 수 있습니다. 이렇게 하려면 bug.webrtc.org에 버그를 신고하고 EngProd팀에 시도 권한을 요청하세요.

체험판 작업을 실행하려면 위에서 설명한 대로 CL을 업로드하고 CQ 테스트 실행을 클릭하거나 Gerrit UI에서 Trybots 선택 추천 기능을 사용해야 합니다. 그렇지 않으면 검토자에게 봇을 시작하도록 요청하세요.