1 [Android Ice Cold Project](http://aicp-rom.com)
2 ====================================
8 Please read the [AOSP building instructions](https://source.android.com/source/index.html) before proceeding.
10 Initializing Repository
11 -----------------------
15 $ repo init -u https://github.com/AICP/platform_manifest.git -b q10.0
22 Some info on how to customize your sync:
24 -f, --force-broken continue sync even if a project fails to sync
26 --force-sync overwrite an existing git directory if it needs to
27 point to a different object directory. WARNING: this
28 may cause loss of data
30 -l, --local-only only update working tree, don't fetch
32 -n, --network-only fetch only, don't update working tree
34 -c, --current-branch fetch only current branch from server
36 -j JOBS, --jobs=JOBS projects to fetch simultaneously (default 4)
38 --no-clone-bundle disable use of /clone.bundle on HTTP/HTTPS
40 --no-tags don't fetch tags
42 Smallest/fastest sync:
44 $ repo sync --no-tags --no-clone-bundle
46 Note: we already define -c in our default.xml, so no need to add it
53 After the sync is finished, please read the [instructions from the Android site](https://source.android.com/source/building.html) on how to build.
59 You can also build (and see how long it took) for specific devices like this:
64 Remember to `make clobber` every now and then!
67 Optional After Successful Build
68 --------------------------------
70 After you get a working build, and if you would like to share your build on XDA (Regular Unofficial Builds), then please use the following template to create
71 an XDA thread. Note that the template is a guideline of sort. You may make your own changes to it (especially please change the download link), but try
72 to stick as close as possible to the template. This is to avoid cluttering and make stuff organized.
74 Link : https://raw.githubusercontent.com/AICP/vendor_aicp/q10.0/docs/xda_template/xda_thread-template.txt
77 Uploading to AICP Gerrit
80 1st You must have local ssh keys on your computer if you do not here is a [guide](https://help.github.com/articles/connecting-to-github-with-ssh/) to generate them
82 2nd Make an account on [Gerrit](http://gerrit.aicp-rom.com) login only using GoogleAuth2
84 3rd Add your ssh public key to your account
86 4th Make your changes and commit them
88 5th use the following command to push your commit to gerrit
90 (From root android directory)
92 repo start q10.0 path/to/project
96 For more help on using this tool, use this command:
102 git push ssh://USERNAME@gerrit.aicp-rom.com:29418/AICP/REPO_NAME HEAD:refs/for/branch-name
106 git push ssh://USERNAME@gerrit.aicp-rom.com:29418/AICP/platform_manifest HEAD:refs/for/q10.0
109 6th You will get an error about a missing Change-ID in that error it will show you a suggested commit message copy the change id
111 7th Do the following command and add the Change-ID to the end of the commit message
115 Here is an example of what the commit message should look like:
117 > Add how to push to gerrit
119 > Change-Id: I93949d30d732de35222d9d78d1f94e33e4bffc47
121 8th use the same command to push to gerrit and if you did everything properly it will be up on gerrit
125 ## Maintaining Authorship ##
126 Always make sure if you submit a patch/fix that you maintain authorship.
127 This is very important to not only us but to the entire open source community. It's what keeps it going and encourages more developers to contribute their work.
129 If you manually cherry pick a patch/fix add the original author prior to pushing to our gerrit.
130 This task is very easy and is usually done after you commit a patch/fix locally.
132 i.e - Once you type in "git commit -a" the commit message and you have saved it, type in the following:
135 git commit --amend --author "Author <email@address.com>"
138 So it should look like this once you get all author's information:
141 git commit --amend --author "John Doe <john.doe@gmail.com>"
144 Picking changes from our gerrit
145 -------------------------------
147 (From root android directory)
150 to pick every change from a topic:
154 to pick a specific change
156 repopick commit-number
158 example, to pick this commit: https://gerrit.aicp-rom.com/#/c/36939/
164 -------------------------------
165 https://github.com/AICP/vendor_aicp/blob/q10.0/docs/aicpInfo.md
168 ## Maintainer Application ##
169 If you have the necessary skills and would like to become a part of our group by becoming a maintainer,
170 please see [this link](https://github.com/AICP/vendor_aicp/blob/q10.0/docs/maintainerApplication.md) for further information and maintainer application.