git/gerrit 사용시 알아야 할 것

git과 gerrit 을 사용할 때 최소한 알아야 하는 것을 정리한 것으로 회사 내의 git 교육 담당자에게 교육 시 필요한 내용을 정리해서 보낸 내용이다. 이거 다 알면 git 잘 쓴다^^
이것을 차례로 삼아 세부 내용을 하나씩 문서로 만들어 정리하자.

추가1: 이미 http://namhyung.springnote.com/pages/3132772 에 git 사용자 설명서가 있다. 저 namhyung님이 내가 아는 우분투 쪽 김남형 님일까 ㅎㅎ

추가2: http://git-scm.com/book/ko 번역자에게 축복을…

* git
1. Git의 Repository 개념과 clone 의 개념, clone

2. Git의 remote branch와 local branch 간 차이, fetch
3. Remote 브랜치로부터 local branch 를 최신으로 업데이트 하는 방법, pull/rebase의 이해
4. 수정 반영 방법, Git의 Staging area 개념과 작업 방법, add/commit 의 이해, commit -s 옵션
5. Commit 을 수정하는 방법, commit –amend 의 이해
6. Push 방법 – Gerrit의 refs/for/* 개념 이해, push의 이해, push 시의 refs spec 이해
7. Log를 확인하는 방법, log
8. Commit 간 차이(diff)를 확인하는 방법, diff
9. 특정 시점의 소스로 돌아가는 방법, reset
10. 특정 소스 파일을 특정 시점으로 되돌리는 방법, checkout
11. Backout 방법, revert
12. local 브랜치를 만드는 방법, branch
13. remote 브랜치나 local 브랜치로 local 소스를 만드는 방법, checkout
14. cherry-pick 의 이해, cherry-pick
15. patch 파일 만들기와 패치 적용 방법, , format-patch/am
16. merge 방법 및 merge commit이 무엇인지, merge
17. rebase 나 merge 시의 conflict 해결 방법

* gerrit
1. 그룹의 정의 및 권한 이해
2. Verify 방법 – Verify 의 의미 이해
3. Review 방법 – Inline comments 작성 및 cover message 작성(+ 한글 작성 가능 알림)
4. Gerrit 에서 cherry-pick 하기
5. Gerrit 에서 checkout 하기
6. Gerrit 에서 같은 Change의 Patch set 업데이트 하기
7. Submit 시의 동작 이해

구글 안드로이드 문서의 Content License

구글 안드로이드 관련 문서들을 살펴보다가 괜찮은 문서가 있으면 공부 및 정리 겸 해서 번역하면서 보려고 생각하다가 그냥 번역하고 인터넷 상에 올리면 안될 것 같아서 문서들 아래에 적혀있는 다음과 같은 문구의 링크된 Content License 부분을 눌러서 보게 되었다.


Android 1.5 r3 – 21 Jul 2009 11:19



일단 Content에 대해서 두가지로 나누고 있는데, 먼저, “Documentation content” 라 하여 “Dev Guide” 와 “Reference” 탭에 있는 샘플 코드나 소스코드로 부터 생성된 내용이나 그 외 내용들로 하나를 구분하고, 기타 다른 사이트 상의 모든 내용들, 이렇게 해서 두가지로 구분한다.

Content License 에 따르면, 일단 “Documentaion content”는 Android Open Source Project의 일부로 사용 가능하고, 어떤 코드가 포함된 문서들은 Apache 2.0 라이센스를 따른다고 한다. 물론 그에 앞서 GPLv2나 그 외의 라이센스에 해당하는 소스코드를 포함하는 경우에는 해당 라이센스가 우선된다. Apache 2.0 License에 관해서는 KLDPWiki: 오픈소스 소프트웨어 라이센스 가이드Apache 2.0 라이센스 원문, 그리고 Apache 2.0 라이센스의 번역본(김윤수님의 Apache License Version 2.0 번역 완료) 글을 참조해보기 바란다.

그리고 나머지 사이트 상의 다른 모든 자료들은 Creative Commons Attribution 2.5[우리말] 라이센스를 따른다.