1 <html devsite><head> 2 <title></title> 3 <meta name="project_path" value="/_project.yaml"/> 4 <meta name="book_path" value="/_book.yaml"/> 5 </head> 6 <body> 7 <!-- 8 Copyright 2017 The Android Open Source Project 9 10 Licensed under the Apache License, Version 2.0 (the "License"); 11 you may not use this file except in compliance with the License. 12 You may obtain a copy of the License at 13 14 http://www.apache.org/licenses/LICENSE-2.0 15 16 Unless required by applicable law or agreed to in writing, software 17 distributed under the License is distributed on an "AS IS" BASIS, 18 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 19 See the License for the specific language governing permissions and 20 limitations under the License. 21 --> 22 23 <p>Android Google Git Git Android Android 24 </p> 25 <p><a href="running.html#selecting-device-build"></a> 26 </p> 27 <h2 id="installing-repo"> Repo</h2> 28 <p>Repo Android Git Repo<a href="developing.html"></a> 29 </p> 30 <p> Repo</p> 31 <ol> 32 <li> 33 <p> bin/ </p> 34 <pre> 35 <code>$ mkdir ~/bin 36 $ PATH=~/bin:$PATH 37 </code> 38 </pre> 39 </li> 40 <li> 41 <p> Repo </p> 42 <pre> 43 $ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo 44 $ chmod a+x ~/bin/repo 45 </pre> 46 </li> 47 </ol> 48 <p> 1.21 Repo SHA-1 b8bd1804f432ecf1bab730949c82b93b0fc5fede</p> 49 <p> 1.22 Repo SHA-1 da0514e484f74648a890c0467d61ca415379f791</p> 50 <p> 1.23 Repo SHA-1 ac9d646f6d699f6822a6bc787d3e7338ae7ab6ed</p> 51 <h2 id="initializing-a-repo-client"> Repo </h2> 52 <p> Repo Android </p> 53 <ol> 54 <li> 55 <p> MacOS</p> 56 <pre> 57 $ mkdir WORKING_DIRECTORY 58 $ cd WORKING_DIRECTORY 59 </pre> 60 </li> 61 <li> 62 <p> Git Gerrit <a href="https://www.google.com/accounts"> Google </a> 63 </p> 64 <pre> 65 $ git config --global user.name "Your Name" 66 $ git config --global user.email "you (a] example.com" 67 </pre> 68 </li> 69 70 <li> 71 <p> <code>repo init</code> Repo Android 72 </p> 73 <pre> 74 $ repo init -u https://android.googlesource.com/platform/manifest 75 </pre> 76 <p>master <code>-b</code> <a href="build-numbers.html#source-code-tags-and-builds"></a> 77 </p> 78 <pre> 79 $ repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1 80 </pre> 81 </li> 82 </ol> 83 <p> Repo <code>.repo</code> 84 </p> 85 <h2 id="getting-the-files"> Android </h2> 86 <p> Android </p> 87 <pre>$ repo sync</pre> 88 <p>Android 1 <code>repo 89 sync</code> Repo <a href="developing.html"></a> 90 </p> 91 <h2 id="using-authentication"></h2> 92 <p> Android IP 93 </p> 94 <p> IP NAT IP 95 </p> 96 <p> IP 97 </p> 98 <p><a href="https://android.googlesource.com/new-password"></a> 99 </p> 100 <p> URI<code>https://android.googlesource.com/a/platform/manifest</code> <code>/a/</code> </p> 101 <pre> 102 $ repo init -u https://android.googlesource.com/a/platform/manifest 103 </pre> 104 <h2 id="troubleshooting-network-issues"></h2> 105 <p> Repo </p> 106 <pre> 107 $ export HTTP_PROXY=http://<proxy_user_id>:<proxy_password>@<proxy_server>:<proxy_port>; 108 $ export HTTPS_PROXY=http://<proxy_user_id>:<proxy_password>@<proxy_server>:<proxy_port>; 109 </pre> 110 <p>Linux TCP/IP root TCP </p> 111 <pre> 112 $ sudo sysctl -w net.ipv4.tcp_window_scaling=0 113 $ repo sync -j1 114 </pre> 115 <h2 id="using-a-local-mirror"></h2> 116 <p> 117 </p> 118 <p> <code>/usr/local/aosp/mirror</code> <code>--mirror</code> </p> 119 <pre> 120 $ mkdir -p /usr/local/aosp/mirror 121 $ cd /usr/local/aosp/mirror 122 $ repo init -u https://android.googlesource.com/mirror/manifest --mirror 123 $ repo sync 124 </pre> 125 <p></p> 126 <pre>$ mkdir -p /usr/local/aosp/master 127 $ cd /usr/local/aosp/master 128 $ repo init -u /usr/local/aosp/mirror/platform/manifest.git 129 $ repo sync 130 </pre> 131 <p></p> 132 <pre> 133 $ cd /usr/local/aosp/mirror 134 $ repo sync 135 $ cd /usr/local/aosp/master 136 $ repo sync 137 </pre> 138 <p> LAN NFSSSH Git 139 </p> 140 <h2 id="verifying-git-tags"> Git </h2> 141 <p> GnuPG 142 </p> 143 <pre> 144 $ gpg --import 145 </pre> 146 <p> EOF (Ctrl-D) 147 </p> 148 <pre> 149 -----BEGIN PGP PUBLIC KEY BLOCK----- 150 Version: GnuPG v1.4.2.2 (GNU/Linux) 151 152 mQGiBEnnWD4RBACt9/h4v9xnnGDou13y3dvOx6/t43LPPIxeJ8eX9WB+8LLuROSV 153 lFhpHawsVAcFlmi7f7jdSRF+OvtZL9ShPKdLfwBJMNkU66/TZmPewS4m782ndtw7 154 8tR1cXb197Ob8kOfQB3A9yk2XZ4ei4ZC3i6wVdqHLRxABdncwu5hOF9KXwCgkxMD 155 u4PVgChaAJzTYJ1EG+UYBIUEAJmfearb0qRAN7dEoff0FeXsEaUA6U90sEoVks0Z 156 wNj96SA8BL+a1OoEUUfpMhiHyLuQSftxisJxTh+2QclzDviDyaTrkANjdYY7p2cq 157 /HMdOY7LJlHaqtXmZxXjjtw5Uc2QG8UY8aziU3IE9nTjSwCXeJnuyvoizl9/I1S5 158 jU5SA/9WwIps4SC84ielIXiGWEqq6i6/sk4I9q1YemZF2XVVKnmI1F4iCMtNKsR4 159 MGSa1gA8s4iQbsKNWPgp7M3a51JCVCu6l/8zTpA+uUGapw4tWCp4o0dpIvDPBEa9 160 b/aF/ygcR8mh5hgUfpF9IpXdknOsbKCvM9lSSfRciETykZc4wrRCVGhlIEFuZHJv 161 aWQgT3BlbiBTb3VyY2UgUHJvamVjdCA8aW5pdGlhbC1jb250cmlidXRpb25AYW5k 162 cm9pZC5jb20+iGAEExECACAFAknnWD4CGwMGCwkIBwMCBBUCCAMEFgIDAQIeAQIX 163 gAAKCRDorT+BmrEOeNr+AJ42Xy6tEW7r3KzrJxnRX8mij9z8tgCdFfQYiHpYngkI 164 2t09Ed+9Bm4gmEO5Ag0ESedYRBAIAKVW1JcMBWvV/0Bo9WiByJ9WJ5swMN36/vAl 165 QN4mWRhfzDOk/Rosdb0csAO/l8Kz0gKQPOfObtyYjvI8JMC3rmi+LIvSUT9806Up 166 hisyEmmHv6U8gUb/xHLIanXGxwhYzjgeuAXVCsv+EvoPIHbY4L/KvP5x+oCJIDbk 167 C2b1TvVk9PryzmE4BPIQL/NtgR1oLWm/uWR9zRUFtBnE411aMAN3qnAHBBMZzKMX 168 LWBGWE0znfRrnczI5p49i2YZJAjyX1P2WzmScK49CV82dzLo71MnrF6fj+Udtb5+ 169 OgTg7Cow+8PRaTkJEW5Y2JIZpnRUq0CYxAmHYX79EMKHDSThf/8AAwUIAJPWsB/M 170 pK+KMs/s3r6nJrnYLTfdZhtmQXimpoDMJg1zxmL8UfNUKiQZ6esoAWtDgpqt7Y7s 171 KZ8laHRARonte394hidZzM5nb6hQvpPjt2OlPRsyqVxw4c/KsjADtAuKW9/d8phb 172 N8bTyOJo856qg4oOEzKG9eeF7oaZTYBy33BTL0408sEBxiMior6b8LrZrAhkqDjA 173 vUXRwm/fFKgpsOysxC6xi553CxBUCH2omNV6Ka1LNMwzSp9ILz8jEGqmUtkBszwo 174 G1S8fXgE0Lq3cdDM/GJ4QXP/p6LiwNF99faDMTV3+2SAOGvytOX6KjKVzKOSsfJQ 175 hN0DlsIw8hqJc0WISQQYEQIACQUCSedYRAIbDAAKCRDorT+BmrEOeCUOAJ9qmR0l 176 EXzeoxcdoafxqf6gZlJZlACgkWF7wi2YLW3Oa+jv2QSTlrx4KLM= 177 =Wi5D 178 -----END PGP PUBLIC KEY BLOCK----- 179 </pre> 180 <p></p> 181 <pre> 182 $ git tag -v TAG_NAME 183 </pre> 184 <p><a href="initializing.html#ccache"> ccache</a> 185 </p> 186 187 </body></html>