Your SlideShare is downloading. ×
AOSP에 컨트리뷰션 하기
SeongJae Park
반갑습니다!
<name>
SeongJae Park
</name>
<email>
sj38.park@gmail.com
</email>
컨트리뷰션?
【명사】
1.[불] (또는 a contribution) […에의] 기부, 출자, 기여, 공
헌, 조력, 기고, 투고[to, toward ‥]; 발언(하는 것)
a contribution of $50,000 ...
AOSP?
Android Open Source Project
From
community
Google internal
source treeAOSP
From
Googler
Release
Android is an OSS stack
* OSS : Open Source Software
AOSP 관리에 사용되는 도구
● git : Android를 구성하는 각 프로젝트의 VCS
● repo : 프로젝트들의 repository를 통합 관리
● gerrit : web 기반 소스코드 리뷰 시스템
컨트리뷰션 프로세스
소스 다운로드gerrit 설정
목표 설정
패치 작성
패치 업로드 Merged / Abandoned
Commented
리뷰
gerrit 설정
구글 계정으로 로그인
https://android-review.googlesource.com/#/
Contributor agreement에 동의
HTTP password 획득, ~/.netrc 설정
gerrit 설정 - contributor agreement
gerrit 설정 - contributor agreement
gerrit 설정 - contributor agreement
gerrit 설정 - contributor agreement
Gerrit 설정 - HTTP password
Gerrit 설정 - HTTP password
Gerrit 설정 - HTTP password
소스 다운로드
$ repo init -u 
https://android.googlesource.com/platform/manifest
$ repo sync
repo init
● .repo 디렉토리 구성
● 최신 repo 다운로드
● 전체 프로젝트 작업디렉토리 구성 매니페스
트 다운로드/설정
repo init
.repo/manifest.xml
repo sync
● 각 project 를 clone, 작업 directory 구성
● manifest 설정대로 remote.aosp 설정
● git hook 설치
목표 설정
버그 레포트 페이지
http://code.google.com/p/android/issues/list
토론의 장
https://groups.google.com/forum/?fromgroups#!
forum/an...
수정사항 만들기
Topic branch
$ repo start <branch_name> <project path>
코드 스타일 가이드라인
http://s.android.com/source/code-style.html
수정사항 만들기
소스 수정은 각자 편한대로.
(취향입니다. 존중해 주시죠?)
패치 업로드
push 대신 repo upload
$ git add -A
$ git commit -s
$ repo upload
Review process
Review process
Need Verification, approval
Add reviewer
리뷰어를 잘 골라야 진행이 편합니다.
git log 또는 gerrit 기록을 참고, 리뷰어 선택
패치 내용 수정하기
패치에 실수가 있었거나, 수정을 권고받으면?
$ git commit --amend
$ repo upload
패치 내용 수정하기
요점은 Change-ID
패치 내용 수정하기
repo가 설치한 commit-msg hook이 생성
패치 내용 수정하기
결국, Change-ID는,
"""tree 8bc51ccbccd3f90c131b1acd747bf869c2d569d4
parent f26d9d5884339dc450831dd453bbb77b4e77d9e...
Summary
소스 다운로드
repo init -u ...
repo sync
목표 설정
패치 작성
repo start
패치 업로드
git add -A
git commit [--amend]
repo upload
Merge...
Thank you
References
http://s.android.com/
https://android-review.googlesource.
com/Documentation/index.html
http://code.google.com/...
AOSP에 컨트리뷰션 하기   dev festx korea 2012 presentation
Upcoming SlideShare
Loading in...5
×

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

487

Published on

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

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
487
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

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

  1. 1. AOSP에 컨트리뷰션 하기 SeongJae Park
  2. 2. 반갑습니다! <name> SeongJae Park </name> <email> sj38.park@gmail.com </email>
  3. 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. 4. AOSP? Android Open Source Project From community Google internal source treeAOSP From Googler Release
  5. 5. Android is an OSS stack * OSS : Open Source Software
  6. 6. AOSP 관리에 사용되는 도구 ● git : Android를 구성하는 각 프로젝트의 VCS ● repo : 프로젝트들의 repository를 통합 관리 ● gerrit : web 기반 소스코드 리뷰 시스템
  7. 7. 컨트리뷰션 프로세스 소스 다운로드gerrit 설정 목표 설정 패치 작성 패치 업로드 Merged / Abandoned Commented 리뷰
  8. 8. gerrit 설정 구글 계정으로 로그인 https://android-review.googlesource.com/#/ Contributor agreement에 동의 HTTP password 획득, ~/.netrc 설정
  9. 9. gerrit 설정 - contributor agreement
  10. 10. gerrit 설정 - contributor agreement
  11. 11. gerrit 설정 - contributor agreement
  12. 12. gerrit 설정 - contributor agreement
  13. 13. Gerrit 설정 - HTTP password
  14. 14. Gerrit 설정 - HTTP password
  15. 15. Gerrit 설정 - HTTP password
  16. 16. 소스 다운로드 $ repo init -u https://android.googlesource.com/platform/manifest $ repo sync
  17. 17. repo init ● .repo 디렉토리 구성 ● 최신 repo 다운로드 ● 전체 프로젝트 작업디렉토리 구성 매니페스 트 다운로드/설정
  18. 18. repo init .repo/manifest.xml
  19. 19. repo sync ● 각 project 를 clone, 작업 directory 구성 ● manifest 설정대로 remote.aosp 설정 ● git hook 설치
  20. 20. 목표 설정 버그 레포트 페이지 http://code.google.com/p/android/issues/list 토론의 장 https://groups.google.com/forum/?fromgroups#! forum/android-contrib
  21. 21. 수정사항 만들기 Topic branch $ repo start <branch_name> <project path> 코드 스타일 가이드라인 http://s.android.com/source/code-style.html
  22. 22. 수정사항 만들기 소스 수정은 각자 편한대로. (취향입니다. 존중해 주시죠?)
  23. 23. 패치 업로드 push 대신 repo upload $ git add -A $ git commit -s $ repo upload
  24. 24. Review process
  25. 25. Review process Need Verification, approval
  26. 26. Add reviewer 리뷰어를 잘 골라야 진행이 편합니다. git log 또는 gerrit 기록을 참고, 리뷰어 선택
  27. 27. 패치 내용 수정하기 패치에 실수가 있었거나, 수정을 권고받으면? $ git commit --amend $ repo upload
  28. 28. 패치 내용 수정하기 요점은 Change-ID
  29. 29. 패치 내용 수정하기 repo가 설치한 commit-msg hook이 생성
  30. 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. 31. Summary 소스 다운로드 repo init -u ... repo sync 목표 설정 패치 작성 repo start 패치 업로드 git add -A git commit [--amend] repo upload Merged / Abandoned Commented 리뷰 gerrit 설정
  32. 32. Thank you
  33. 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/

×