AOSP에 컨트리뷰션 하기 dev festx korea 2012 presentation

  • 355 views
Uploaded on

dev festx korea 2012 행사 때 발표했던, AOSP에 컨트리뷰션 하는 방법을 다룬 발표자료입니다.

dev festx korea 2012 행사 때 발표했던, AOSP에 컨트리뷰션 하는 방법을 다룬 발표자료입니다.

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
355
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
0
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. AOSP에 컨트리뷰션 하기 SeongJae Park
  • 2. 반갑습니다! <name> SeongJae Park </name> <email> sj38.park@gmail.com </email>
  • 3. 컨트리뷰션? 【명사】 1.[불] (또는 a contribution) […에의] 기부, 출자, 기여, 공 헌, 조력, 기고, 투고[to, toward ‥]; 발언(하는 것) a contribution of $50,000 to the project 계획에 대한 5만 달러의 출자 America's contribution to the peaceful development of Asia 아시아의 평화적 개발에 대한 미국의 공헌 make a small[a large] contribution toward revising the law 법률 개정에 약간[크게] 기여하다.
  • 4. AOSP? Android Open Source Project From community Google internal source treeAOSP From Googler Release
  • 5. Android is an OSS stack * OSS : Open Source Software
  • 6. AOSP 관리에 사용되는 도구 ● git : Android를 구성하는 각 프로젝트의 VCS ● repo : 프로젝트들의 repository를 통합 관리 ● gerrit : web 기반 소스코드 리뷰 시스템
  • 7. 컨트리뷰션 프로세스 소스 다운로드gerrit 설정 목표 설정 패치 작성 패치 업로드 Merged / Abandoned Commented 리뷰
  • 8. gerrit 설정 구글 계정으로 로그인 https://android-review.googlesource.com/#/ Contributor agreement에 동의 HTTP password 획득, ~/.netrc 설정
  • 9. gerrit 설정 - contributor agreement
  • 10. gerrit 설정 - contributor agreement
  • 11. gerrit 설정 - contributor agreement
  • 12. gerrit 설정 - contributor agreement
  • 13. Gerrit 설정 - HTTP password
  • 14. Gerrit 설정 - HTTP password
  • 15. Gerrit 설정 - HTTP password
  • 16. 소스 다운로드 $ repo init -u https://android.googlesource.com/platform/manifest $ repo sync
  • 17. repo init ● .repo 디렉토리 구성 ● 최신 repo 다운로드 ● 전체 프로젝트 작업디렉토리 구성 매니페스 트 다운로드/설정
  • 18. repo init .repo/manifest.xml
  • 19. repo sync ● 각 project 를 clone, 작업 directory 구성 ● manifest 설정대로 remote.aosp 설정 ● git hook 설치
  • 20. 목표 설정 버그 레포트 페이지 http://code.google.com/p/android/issues/list 토론의 장 https://groups.google.com/forum/?fromgroups#! forum/android-contrib
  • 21. 수정사항 만들기 Topic branch $ repo start <branch_name> <project path> 코드 스타일 가이드라인 http://s.android.com/source/code-style.html
  • 22. 수정사항 만들기 소스 수정은 각자 편한대로. (취향입니다. 존중해 주시죠?)
  • 23. 패치 업로드 push 대신 repo upload $ git add -A $ git commit -s $ repo upload
  • 24. Review process
  • 25. Review process Need Verification, approval
  • 26. Add reviewer 리뷰어를 잘 골라야 진행이 편합니다. git log 또는 gerrit 기록을 참고, 리뷰어 선택
  • 27. 패치 내용 수정하기 패치에 실수가 있었거나, 수정을 권고받으면? $ git commit --amend $ repo upload
  • 28. 패치 내용 수정하기 요점은 Change-ID
  • 29. 패치 내용 수정하기 repo가 설치한 commit-msg hook이 생성
  • 30. 패치 내용 수정하기 결국, Change-ID는, """tree 8bc51ccbccd3f90c131b1acd747bf869c2d569d4 parent f26d9d5884339dc450831dd453bbb77b4e77d9e5 author SeongJae Park <sj38.park@gmail.com> 1336637344 +0900 committer SeongJae Park <sj38.park@gmail.com> 1336637344 +0900 Test for devFestX""" 의 SHA-1
  • 31. Summary 소스 다운로드 repo init -u ... repo sync 목표 설정 패치 작성 repo start 패치 업로드 git add -A git commit [--amend] repo upload Merged / Abandoned Commented 리뷰 gerrit 설정
  • 32. Thank you
  • 33. References http://s.android.com/ https://android-review.googlesource. com/Documentation/index.html http://code.google.com/p/gerrit/ http://code.google.com/p/gource/