https://wiki.openstack.org/w/index.php?title=GerritJenkinsGith/ja&feed=atom&action=historyGerritJenkinsGith/ja - Revision history2024-03-29T14:15:19ZRevision history for this page on the wikiMediaWiki 1.28.2https://wiki.openstack.org/w/index.php?title=GerritJenkinsGith/ja&diff=45385&oldid=prevFungi: /* Gerrit Accounts */ updates for the modern era2014-03-12T19:29:18Z<p><span dir="auto"><span class="autocomment">Gerrit Accounts: </span> updates for the modern era</span></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 19:29, 12 March 2014</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l31" >Line 31:</td>
<td colspan="2" class="diff-lineno">Line 31:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Because Gerrit uses Launchpad OpenID single sign-on, you won't need a</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>Because Gerrit uses Launchpad OpenID single sign-on, you won't need a</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>separate password for Gerrit, and once you log in to one of Launchpad,  </div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>separate password for Gerrit, and once you log in to one of Launchpad,  </div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>Gerrit<del class="diffchange diffchange-inline">, or Jenkins</del>, you won't have to enter your password for the others.   </div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">or </ins>Gerrit, you won't have to enter your password for the others.   </div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">Gerrit accounts are automatically synchronized with Launchpad, so</del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>The first time you log into Gerrit, you should click</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">your Gerrit account should already have the same username, full name, </del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">email address, ssh keys, and group membership.</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> </div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">Some information in Launchpad is not publicly available and so may not</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">be copied over.  </del>The first time you log into Gerrit, you should click</div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>the '''Settings''' link at the top of the page, and then make sure</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>the '''Settings''' link at the top of the page, and then make sure</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>that your '''Contact Information''', '''SSH Public Keys''', and</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>that your '''Contact Information''', '''SSH Public Keys''', and</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>''<del class="diffchange diffchange-inline">'Groups</del>''' look correct.  If not, please <del class="diffchange diffchange-inline">register your email address</del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>''<ins class="diffchange diffchange-inline">SSH Keys</ins>''' look correct.  If not, please <ins class="diffchange diffchange-inline">update them</ins>.</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">and SSH keys.  If your group membership is not correct, please email</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">openstack-ci-admins@lists.launchpad.net</del>.</div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>=== Setting up Git for Use with Gerrit ===</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>=== Setting up Git for Use with Gerrit ===</div></td></tr>
</table>Fungihttps://wiki.openstack.org/w/index.php?title=GerritJenkinsGith/ja&diff=29091&oldid=prevLyz: Lyz moved page GerritJenkinsGithub/ja to GerritJenkinsGith/ja2013-08-28T17:32:50Z<p>Lyz moved page <a href="/wiki/GerritJenkinsGithub/ja" class="mw-redirect" title="GerritJenkinsGithub/ja">GerritJenkinsGithub/ja</a> to <a href="/wiki/GerritJenkinsGith/ja" title="GerritJenkinsGith/ja">GerritJenkinsGith/ja</a></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<tr style='vertical-align: top;' lang='en'>
<td colspan='1' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='1' style="background-color: white; color:black; text-align: center;">Revision as of 17:32, 28 August 2013</td>
</tr><tr><td colspan='2' style='text-align: center;' lang='en'><div class="mw-diff-empty">(No difference)</div>
</td></tr></table>Lyzhttps://wiki.openstack.org/w/index.php?title=GerritJenkinsGith/ja&diff=17637&oldid=prevRyan Lane: Text replace - "__NOTOC__" to ""2013-02-17T23:30:56Z<p>Text replace - "__NOTOC__" to ""</p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 23:30, 17 February 2013</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l1" >Line 1:</td>
<td colspan="2" class="diff-lineno">Line 1:</td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">__NOTOC__</del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div> </div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>= Gerrit, Jenkins, GitHub =</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>= Gerrit, Jenkins, GitHub =</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
</table>Ryan Lanehttps://wiki.openstack.org/w/index.php?title=GerritJenkinsGith/ja&diff=16509&oldid=prevRyan Lane: Text replace - "<<TableOfContents()>>" to "__TOC__"2013-02-17T23:22:07Z<p>Text replace - "<<<a href="/w/index.php?title=TableOfContents&action=edit&redlink=1" class="new" title="TableOfContents (page does not exist)">TableOfContents</a>()>>" to "__TOC__"</p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 23:22, 17 February 2013</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l3" >Line 3:</td>
<td colspan="2" class="diff-lineno">Line 3:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>クイックリファレンスは [[GerritWorkflow]] を参照して下さい。</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>クイックリファレンスは [[GerritWorkflow]] を参照して下さい。</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline"><<[[TableOfContents]]()>></del></div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div><ins class="diffchange diffchange-inline">__TOC__</ins></div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[https://github.com/ GitHub] は Git コードリポジトリの管理と他の開発者とのやりとりを行う為のリソースです。</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[https://github.com/ GitHub] は Git コードリポジトリの管理と他の開発者とのやりとりを行う為のリソースです。</div></td></tr>
<!-- diff cache key openstack_wiki:diff:version:1.11a:oldid:16176:newid:16509 -->
</table>Ryan Lanehttps://wiki.openstack.org/w/index.php?title=GerritJenkinsGith/ja&diff=16176&oldid=prevClark Boylan at 22:58, 16 February 20132013-02-16T22:58:59Z<p></p>
<a href="https://wiki.openstack.org/w/index.php?title=GerritJenkinsGith/ja&diff=16176&oldid=10917">Show changes</a>Clark Boylanhttps://wiki.openstack.org/w/index.php?title=GerritJenkinsGith/ja&diff=10917&oldid=prevAkira at 02:41, 21 January 20122012-01-21T02:41:16Z<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class='diff-marker' />
<col class='diff-content' />
<col class='diff-marker' />
<col class='diff-content' />
<tr style='vertical-align: top;' lang='en'>
<td colspan='2' style="background-color: white; color:black; text-align: center;">← Older revision</td>
<td colspan='2' style="background-color: white; color:black; text-align: center;">Revision as of 02:41, 21 January 2012</td>
</tr><tr><td colspan="2" class="diff-lineno" id="mw-diff-left-l7" >Line 7:</td>
<td colspan="2" class="diff-lineno">Line 7:</td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[https://github.com/ GitHub] は Git コードリポジトリの管理と他の開発者とのやりとりを行う為のリソースです。</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[https://github.com/ GitHub] は Git コードリポジトリの管理と他の開発者とのやりとりを行う為のリソースです。</div></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[http://jenkins-ci.org/ Jenkins] は、機能性の確認とコードベースの各変更が意図した通りに作動する事を検証する為に、連続的に [[OpenStack]] の全コンポーネントのテストを行う為に使用されます。</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>[http://jenkins-ci.org/ Jenkins] は、機能性の確認とコードベースの各変更が意図した通りに作動する事を検証する為に、連続的に [[OpenStack]] の全コンポーネントのテストを行う為に使用されます。</div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div> </div></td><td class='diff-marker'>+</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>[http://code.google.com/p/gerrit/ Gerrit] <ins class="diffchange diffchange-inline">は元々 </ins>Android <ins class="diffchange diffchange-inline">オープンソースプロジェクトにおける使用の為に開発されたコードレビューシステムで、各変更がメインのリポジトリにマージされる前のピアレビューと </ins>Jenkins <ins class="diffchange diffchange-inline">によるテストというワークフローを構築できるようにするものです。</ins></div></td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div>[http://code.google.com/p/gerrit/ Gerrit] <del class="diffchange diffchange-inline">is a code review system</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">originally developed for use by the </del>Android <del class="diffchange diffchange-inline">Open Source Project and</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">allows us to build a workflow where every change is peer-reviewed and</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'>−</td><td style="color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;"><div><del class="diffchange diffchange-inline">tested by </del>Jenkins <del class="diffchange diffchange-inline">before being merged into the main repository.</del></div></td><td colspan="2"> </td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"></td></tr>
<tr><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>After making a change in their local Git repository, developers can</div></td><td class='diff-marker'> </td><td style="background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;"><div>After making a change in their local Git repository, developers can</div></td></tr>
</table>Akirahttps://wiki.openstack.org/w/index.php?title=GerritJenkinsGith/ja&diff=10916&oldid=prevAkira at 02:01, 21 January 20122012-01-21T02:01:43Z<p></p>
<p><b>New page</b></p><div>__NOTOC__<br />
= Gerrit, Jenkins, [[GitHub]] =<br />
<br />
クイックリファレンスは [[GerritWorkflow]] を参照して下さい。<br />
<<[[TableOfContents]]()>><br />
<br />
[https://github.com/ GitHub] は Git コードリポジトリの管理と他の開発者とのやりとりを行う為のリソースです。<br />
[http://jenkins-ci.org/ Jenkins] は、機能性の確認とコードベースの各変更が意図した通りに作動する事を検証する為に、連続的に [[OpenStack]] の全コンポーネントのテストを行う為に使用されます。<br />
<br />
[http://code.google.com/p/gerrit/ Gerrit] is a code review system<br />
originally developed for use by the Android Open Source Project and<br />
allows us to build a workflow where every change is peer-reviewed and<br />
tested by Jenkins before being merged into the main repository.<br />
<br />
After making a change in their local Git repository, developers can<br />
easily push that change to Gerrit as a proposed change for the<br />
project. Jenkins will automatically run functional tests on the code<br />
and provide feedback on the change in Gerrit. Any [[OpenStack]] developer<br />
can provide feedback (in the form of a comment, or even line-by-line<br />
annotations) using Gerrit, and the core developers of the project can<br />
indicate whether they approve of the patch as is, or would like to see<br />
changes before it is integrated. Once patches are merged by Gerrit,<br />
the repository is pushed to the canonical public repository on [[GitHub]].<br />
<br />
== Using Gerrit ==<br />
<br />
The next sections describe how Gerrit fits into the developer<br />
workflow.<br />
<br />
=== Gerrit Accounts ===<br />
<br />
Visit https://review.openstack.org/ and click the '''Sign In''' link<br />
at the top-right corner of the page. Log in with your Launchpad ID.<br />
<br />
Because Gerrit uses Launchpad OpenID single sign-on, you won't need a<br />
separate password for Gerrit, and once you log in to one of Launchpad, <br />
Gerrit, or Jenkins, you won't have to enter your password for the others. <br />
<br />
Gerrit accounts are automatically synchronized with Launchpad, so<br />
your Gerrit account should already have the same username, full name, <br />
email address, ssh keys, and group membership.<br />
<br />
Some information in Launchpad is not publicly available and so may not<br />
be copied over. The first time you log into Gerrit, you should click<br />
the '''Settings''' link at the top of the page, and then make sure<br />
that your '''Contact Information''', '''SSH Public Keys''', and<br />
'''Groups''' look correct. If not, please register your email address<br />
and SSH keys. If your group membership is not correct, please email<br />
openstack-ci-admins@lists.launchpad.net.<br />
<br />
=== Setting up Git for Use with Gerrit ===<br />
<br />
For a more comprehensive look at using Gerrit, see<br />
[https://review.openstack.org/Documentation/user-upload.html the Gerrit manual].<br />
<br />
==== Change-Id Hook ====<br />
<br />
Gerrit uses a '''Change-Id''' footer in commits so that it can link<br />
Git commits to changes stored in its database. When you upload a<br />
revised change (to correct a problem or respond to code review<br />
comments), Gerrit will use the Change-Id footer to attach the commit<br />
as a new patchset on the existing gerrit change. This works best if<br />
the Change-Id is already in the original commit message, before it<br />
is even sent to Gerrit.<br />
<br />
"git review" installs a commit hook into your<br />
repository that automatically adds Change-Id lines to your commits..<br />
<br />
The Gerrit manual goes into more detail about [https://review.openstack.org/Documentation/user-changeid.html change IDs].<br />
<br />
Install the git-review tool, which is the tool [[OpenStack]] uses to simplify submission of reviews to Gerrit.<br />
<br />
<br />
<pre><nowiki><br />
sudo pip install git-review<br />
</nowiki></pre><br />
<br />
<br />
==== Pushing Changes from Git ====<br />
<br />
Simply running '''git review''' should be sufficient to push your<br />
changes to Gerrit, assuming your repository is set up as described<br />
above, you don't need to read the rest of this section unless you want<br />
to use an alternate workflow.<br />
<br />
If you want to push your changes without using git-review, you can push<br />
changes to gerrit like you would any other git repository, using the<br />
following syntax (assuming "gerrit" is configured as a remote<br />
repository):<br />
<br />
<br />
<pre><nowiki><br />
git push gerrit HEAD:refs/for/$BRANCH[/$TOPIC]<br />
</nowiki></pre><br />
<br />
<br />
Where $BRANCH is the name of the Gerrit branch to push to (usually<br />
"master"), and you may optionally specify a Gerrit topic by appending<br />
it after a slash character.<br />
<br />
==== Git SSH Commands ====<br />
<br />
If you find you are frequently executing Gerrit commands via SSH, you<br />
may wish to add something like the following to your<br />
'''~/.ssh/config''' file:<br />
<br />
<br />
<pre><nowiki><br />
Host review<br />
Hostname review.openstack.org<br />
Port 29418<br />
User USERNAME<br />
</nowiki></pre><br />
<br />
<br />
Which may shorten some SSH commands; the following are equivalent:<br />
<br />
<br />
<pre><nowiki><br />
ssh -p 29418 review.openstack.org gerrit ls-projects<br />
ssh review gerrit ls-projects<br />
</nowiki></pre><br />
<br />
<br />
== Reviewing a Change ==<br />
<br />
Log in to https://review.openstack.org/ to see proposed changes, and<br />
review them. <br />
<br />
To provide a review for a proposed change in the Gerrit UI, click on the Review <br />
button (it will be next to the buttons that will provide unified or side-by-side <br />
diffs in the browser). In the code review, you can add a message, as well as a <br />
vote (+1,0,-1). <br />
<br />
Any Openstack developer may propose or comment on a change (including voting +1/0/-1 on it). Openstack projects have a policy requiring two positive reviews from core reviewers. A vote of +2 is allowed from core reviewers, and should be used to indicate that they are a core reviewer and are leaving a vote that should be counted as such.<br />
<br />
When a review has two +2 reviews and one of the core team believes it is ready to be merged, he or she should leave a +1 vote in the "Approved" category. You may do so by clicking the "Review" button again, with or without changing your code review vote and optionally leaving a comment. When a +1 Approved review is received, Jenkins will run tests on the change, and if they pass, it will be merged.<br />
<br />
=== Gerrit Best Practices ===<br />
<br />
If you are working on unrelated changes, you should use a<br />
[http://progit.org/book/ch3-4.html topic branch] so that there <br />
isn't a dependency between the changes.<br />
<br />
When you start working on a new change, make sure you have the current<br />
repository head from github.<br />
<br />
For more information about uploading changes to gerrit, see the<br />
[https://review.openstack.org/Documentation/user-upload.html Uploading Changes] section of the Gerrit manual.<br />
<br />
=== Gerrit Errors ===<br />
<br />
==== missing Change-Id in commit message ====<br />
<br />
If you see an error like this:<br />
<br />
<br />
<pre><nowiki><br />
! [remote rejected] HEAD -> refs/for/master (missing Change-Id in commit message)<br />
</nowiki></pre><br />
<br />
<br />
Make sure that you have the [[GerritJenkinsGithub#Change-Id_Hook|Change-Id hook]] installed. If you don't, install it now, and the run '''git commit --amend'''<br />
and re-save your commit message. The hook will then add a Change-Id line.<br />
<br />
If you did have the hook installed, there may be a syntax error with<br />
the Change-Id line. It must be in the last paragraph of the commit<br />
message, and it must be at the beginning of the line. Your commit<br />
message should look like this in your editor:<br />
<br />
<br />
<pre><nowiki><br />
The text of your commit message is here.<br />
<br />
Change-Id: I5f55e68d1bdb42a0fa6f0b1a5432786d0395da51<br />
</nowiki></pre><br />
<br />
<br />
==== squash commits first ====<br />
If you see this message:<br />
<br />
<pre><nowiki><br />
! [remote rejected] HEAD -> refs/for/master (squash commits first)<br />
</nowiki></pre><br />
<br />
<br />
It means that you are trying to update an existing change in Gerrit,<br />
but you created two separate commits. Normally to update a change you<br />
should ammend an existing commit (see [[GerritWorkflow#Updating a Change|Updating a Change]]). If you have already made a second commit, you will need<br />
squash the last two commits in your tree. To do that, run:<br />
<br />
<br />
<pre><nowiki><br />
git rebase -i HEAD~2<br />
</nowiki></pre><br />
<br />
<br />
Your editor should appear with two commits listed, one per line.<br />
Change the word "pick" on the second line to "squash", so that it<br />
looks like:<br />
<br />
<br />
<pre><nowiki><br />
pick xxxxxxx 2nd commit back<br />
squash yyyyyyy head<br />
</nowiki></pre><br />
<br />
<br />
And save. You should then be able to upload your commit with '''git<br />
review'''.<br />
<br />
=== Gerrit Merge Problems ===<br />
<br />
Gerrit will fast-forward or merge changes as necessary when they are<br />
approved. If a conflict would be created by a merge, gerrit will not<br />
merge the change and will record an error message in the comments for<br />
the change. In these cases, you may need to<br />
[http://www.kernel.org/pub/software/scm/git/docs/git-rebase.html rebase]<br />
or<br />
[http://www.kernel.org/pub/software/scm/git/docs/git-merge.html merge]<br />
the change, or if the repository head has changed significantly, you<br />
may need to change the patch.<br />
<br />
If you don't already have the patch in your local repository, Gerrit<br />
provides commands on the web page for each change indicating how to<br />
download that change. You can then use git to correct the problem.<br />
<br />
If you encounter other error messages from Gerrit, the <br />
[https://review.openstack.org/Documentation/error-messages.html Error Messages] <br />
section of the Gerrit manual may offer some tips.<br />
<br />
= Release Management =<br />
== Milestones ==<br />
<br />
Between the Milestone Branch Point and the release of the<br />
corresponding milestone, there needs to be a separate branch in Gerrit<br />
for changes destined for the milestone release. Meanwhile,<br />
development on the master branch should continue as normal (with the<br />
addition that changes proposed for the milestone should also be<br />
proposed for master, and some changes for master may need to be<br />
applied to milestone-proposed).<br />
<br />
This process creates an ephemeral milestone-proposed branch that is<br />
only available in Gerrit during the milestone process. When the<br />
milestone is released, a tag is applied to the final commit to<br />
record the state of the branch at the time.<br />
<br />
=== Create milestone-proposed Branch ===<br />
<br />
This step should be performed by the [[OpenStack]] Release Manager at the Release Branch Point.<br />
<br />
* Go to https://review.openstack.org/ and sign in<br />
* Select '''Admin''', '''Projects''', then the project<br />
* Select '''Branches'''<br />
* Enter '''milestone-proposed''' in the '''Branch Name''' field, and '''HEAD''' as the Initial Revision, then press '''Create Branch'''<br />
<br />
In your local checkout: <br />
<br />
<br />
<pre><nowiki><br />
git checkout master<br />
git pull<br />
git checkout milestone-proposed<br />
</nowiki></pre><br />
<br />
<br />
=== Authoring Changes for milestone-proposed ===<br />
<br />
Create topic branches as normal, but branch them from<br />
milestone-proposed rather than master.<br />
<br />
<br />
<pre><nowiki><br />
git checkout milestone-proposed<br />
git pull<br />
git checkout -b MY-TOPIC-BRANCH<br />
</nowiki></pre><br />
<br />
<br />
Changes for milestone-proposed should be submitted with:<br />
<br />
<pre><nowiki><br />
git push gerrit HEAD:refs/for/milestone-proposed<br />
</nowiki></pre><br />
<br />
<br />
=== Submit Changes in master to milestone-proposed ===<br />
<br />
If a change to master should also be included in milestone-proposed,<br />
use this procedure to cherry-pick that change and submit it for<br />
review.<br />
<br />
<br />
<pre><nowiki><br />
git checkout milestone-proposed<br />
git pull<br />
git checkout -b master-to-mp<br />
git cherry-pick <SHA1 or "master"><br />
git push gerrit HEAD:refs/for/milestone-proposed<br />
git branch -D master-to-mp<br />
</nowiki></pre><br />
<br />
<br />
'''git cherry-pick master''' will pick the most recent commit from<br />
master to apply, if you want a different patch, use the SHA1 of the<br />
commit instead.<br />
<br />
=== Submitting Changes in milestone-proposed to master ===<br />
<br />
Changes that originate in milestone-proposed should also be submitted<br />
to master. Use these commands to make an up-to-date topic branch from<br />
master, then cherry-pick changes from milestone-proposed to be applied<br />
to master.<br />
<br />
<br />
<pre><nowiki><br />
git checkout master<br />
git pull<br />
git checkout -b mp-to-master<br />
git cherry-pick <SHA1 or milestone-proposed><br />
git review<br />
git branch -D mp-to-master<br />
</nowiki></pre><br />
<br />
<br />
'''git cherry-pick milestone-proposed''' will pick the most recent<br />
commit from milestone-proposed to apply, if you want a different<br />
patch, use the SHA1 of the commit instead.<br />
<br />
=== Tagging a Release ===<br />
<br />
This step should be performed by the [[OpenStack]] Release Manager when the release is made.<br />
<br />
To tag the tip of the milestone-proposed branch with a release tag and<br />
push that tag to gerrit and github, run the following commands:<br />
<br />
<br />
<pre><nowiki><br />
git checkout milestone-proposed<br />
git pull<br />
git tag -s RELEASE-TAG-NAME<br />
git push --tags gerrit<br />
</nowiki></pre><br />
<br />
<br />
Running `git tag -s` signs the tag using GPG, so it's important to ensure that the person making the release have a valid GPG key.<br />
<br />
=== End of Milestone ===<br />
<br />
This step should be performed by the [[OpenStack]] Release Manager after the release is tagged.<br />
<br />
When the milestone process is complete and the released commit is<br />
tagged, remove the milestone-proposed branch. The tag will persist,<br />
even after the branch is deleted, making it possible to restore the<br />
state of the tree.<br />
<br />
* Go to https://review.openstack.org/ and sign in<br />
* Select '''Admin''', '''Projects''', then the project<br />
* Select '''Branches'''<br />
* Select the checkbox next to '''milestone-proposed''' and hit '''Delete'''<br />
<br />
= Resources =<br />
<br />
See the [https://review.openstack.org/Documentation/index.html Gerrit documentation], <br />
especially the User Guide, for more<br />
information on how to use Gerrit. It is also available within Gerrit<br />
by clicking on the '''Documentation''' link on the top of the page.<br />
<br />
The Mahara Project also<br />
[https://wiki.mahara.org/index.php/Developer_Area/Developer_Tools uses Git, Gerrit, and Jenkins]<br />
in a similar manner (though with Gitorious instead of [[GitHub]]).<br />
<br />
A description of many of the elements of the [http://sandofsky.com/blog/git-workflow.html git workflow]</div>Akira