blob: 8f811b798b0f8ec6c4b3ad56792c750a755b31e5 [file] [log] [blame]
Ian Maxon3dffc852015-07-13 20:17:09 -07001<!DOCTYPE html>
2<html lang="en">
3 <head>
4 <meta charset="utf-8">
5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1">
7 <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
8 <meta name="description" content="">
9 <meta name="author" content="">
Ian Maxonf84cb812015-12-07 15:09:45 -080010 <link rel="icon" href="favicon.ico">
Ian Maxon3dffc852015-07-13 20:17:09 -070011
12 <title>Submitting Changes</title>
13
14 <!-- Bootstrap core CSS -->
Ian Maxonf84cb812015-12-07 15:09:45 -080015 <link href="css/bootstrap.min.css" rel="stylesheet">
Ian Maxon3dffc852015-07-13 20:17:09 -070016 <!-- Bootstrap theme -->
17
18 <!-- Custom styles for this template -->
Ian Maxonf84cb812015-12-07 15:09:45 -080019 <link href="css/theme.css" rel="stylesheet">
Ian Maxon3dffc852015-07-13 20:17:09 -070020
21 <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
22 <!--[if lt IE 9]>
23 <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
24 <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
25 <![endif]-->
26 <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">
27 </head>
28
29 <div class="container theme-showcase" role="main">
Till Westmann00f9bf22016-03-14 13:59:27 -070030 <div class="masthead">
31 <p class="lead">
32 <a href="index.html">
33 <img src="img/asterixdb_tm.png" style="height:75px; width:auto; vertical-align:bottom; margin-top:10px;"/>
34 </a>
35 </p>
36 </div>
Ian Maxon3dffc852015-07-13 20:17:09 -070037
Till Westmann00f9bf22016-03-14 13:59:27 -070038 <nav class="navbar navbar-default">
Ian Maxon3dffc852015-07-13 20:17:09 -070039 <div class="container">
40 <div class="navbar-header">
41 <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target=".navbar-collapse">
42 <span class="sr-only">Toggle navigation</span>
43 <span class="icon-bar"></span>
44 <span class="icon-bar"></span>
45 <span class="icon-bar"></span>
46 </button>
Ian Maxonf84cb812015-12-07 15:09:45 -080047 <a class="navbar-brand" href="index.html">Overview</a>
Ian Maxon3dffc852015-07-13 20:17:09 -070048 </div>
49 <div class="navbar-collapse collapse">
50 <ul class="nav navbar-nav">
Ian Maxonf84cb812015-12-07 15:09:45 -080051 <li><a href="download.html">Download</a></li>
Ian Maxona9643c82015-09-01 11:15:57 -100052 <li class="dropdown">
53 <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Documentation<span class="caret"></span></a>
54 <ul class="dropdown-menu" role="menu">
55 <li class="dropdown-header">Stable release</li>
Till Westmanne617e522016-02-29 12:42:51 -080056 <li><a href="docs/0.8.8-incubating/index.html">Documentation for 0.8.8-incubating<i class="fa fa-external-link fa-sm"></i></a></li>
Ian Maxona9643c82015-09-01 11:15:57 -100057 <li class="divider"></li>
58 <li class="dropdown-header">Snapshot release</li>
Ian Maxona1d49092016-03-25 13:24:08 -070059 <li><a href="https://ci.apache.org/projects/asterixdb/index.html">Documentation for 0.8.9-SNAPSHOT <i class="fa fa-external-link fa-sm"></i></a></li>
Ian Maxona9643c82015-09-01 11:15:57 -100060 </ul>
61 </li>
Ian Maxonf84cb812015-12-07 15:09:45 -080062 <li><a href="about.html">About</a></li>
Till Westmann2a321022016-04-08 08:18:14 -070063 <li class="dropdown">
64 <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Community<span class="caret"></span></a>
65 <ul class="dropdown-menu" role="menu">
66 <li><a href="community.html">Mailing Lists</a></li>
67 <li><a href="community.html#irc">IRC</a></li>
68 <li><a href="community.html#asterixdb-team">Team</a></li>
69 <li><a href="https://issues.apache.org/jira/browse/ASTERIXDB">Issue Tracker</a></li>
70 </ul>
71 </li>
Ian Maxon3dffc852015-07-13 20:17:09 -070072 <li class="dropdown">
73 <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Contributing <span class="caret"></span></a>
74 <ul class="dropdown-menu" role="menu">
75 <li class="dropdown-header">For New Contributors</li>
Ian Maxonf84cb812015-12-07 15:09:45 -080076 <li><a href="dev-setup.html">Development Setup</a></li>
Ian Maxon3dffc852015-07-13 20:17:09 -070077 <li class="divider"></li>
78 <li class="dropdown-header">For Committers</li>
Ian Maxonf84cb812015-12-07 15:09:45 -080079 <li><a href="pushing.html">Pushing changes</a></li>
80 <li><a href="site.html">Editing this site</a></li>
Ian Maxon3dffc852015-07-13 20:17:09 -070081 </ul>
82 </li>
83 </ul>
Till Westmann00f9bf22016-03-14 13:59:27 -070084 <ul class="nav navbar-nav navbar-right">
85 <li class="dropdown">
86 <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"
87 style="padding-right: 30px">
88 <img src="img/feather.png" style="height:20px"/>Apache Software Foundation<span class="caret"/>
89 </a>
90 <ul class="dropdown-menu dropdown-menu-right" role="menu">
91 <li><a href="http://www.apache.org/"><b>ASF Homepage</b></a></li>
92 <li><a href="http://www.apache.org/licenses/">License</a></li>
93 <li><a href="http://www.apache.org/foundation/sponsorship.html">Donate</a></li>
94 <li><a href="http://www.apache.org/foundation/thanks.html">Thanks</a></li>
95 <li><a href="http://www.apache.org/security/">Security</a></li>
96 </ul>
97 </li>
98 </ul>
Ian Maxon3dffc852015-07-13 20:17:09 -070099 </div><!--/.nav-collapse -->
100 </div>
101 </nav>
102
103
Till Westmann00f9bf22016-03-14 13:59:27 -0700104 <div class="row">
Ian Maxon3dffc852015-07-13 20:17:09 -0700105<div class="col-md-8 col-centered">
106<h2>Submitting Changes</h2>
107<ul id="markdown-toc">
108 <li><a href="#submitting-patches-in-gerrit" id="markdown-toc-submitting-patches-in-gerrit">Submitting patches in Gerrit</a></li>
109 <li><a href="#pushing-merged-patches-from-gerrit-to-asf-git" id="markdown-toc-pushing-merged-patches-from-gerrit-to-asf-git">Pushing merged patches from Gerrit to ASF git</a></li>
110</ul>
111
112<hr />
113
114<h3 id="submitting-patches-in-gerrit">Submitting patches in Gerrit</h3>
115
116<p>Once a patch set is <code>+2 Code Review</code> in Gerrit, as well as <code>+1 Verified</code>, it can be submitted by a committer.
117In the simplest case, this simply means for someone who is authorized (any Apache committer) to click the ‘Submit Patchset …’ button in the Gerrit web interface. However there is one case right now where care must be exercised in submitting a patch.</p>
118
119<h4 id="patches-which-span-hyracks-and-asterixdb">Patches which span Hyracks and AsterixDB</h4>
120
121<p>These patches require special care to submit. Any AsterixDB patch that requires a topic in Gerrit to verify is of this type. In general this is the process:</p>
122
123<ol>
124 <li>Ensure that both patches are based on the current HEAD of master (there should be no ‘Rebase Change’ button). This will require reviewers to re-apply their +2, because it changes the content of the patch.</li>
125 <li>Submit the Hyracks patch.</li>
126 <li>If all went well, submit the AsterixDB patch.</li>
127</ol>
128
129<p><strong>IMPORTANT</strong>: Do <em>not</em> attempt to merge a patch that needs changes in Hyracks and AsterixDB while it needs rebasing. If the patch to Hyracks succeeds with a clean rebase, but the AsterixDB change requires a manual merge, you will leave master in a broken state!</p>
130
131<h3 id="pushing-merged-patches-from-gerrit-to-asf-git">Pushing merged patches from Gerrit to ASF git</h3>
132
133<p>Once a change is submitted and merged in Gerrit, the job is only partially done. The patch is committed in Gerrit’s local repository, but it is not present in the ASF git repository. This step must be done manually, preferably by the author of the patch (if they are a committer), or by one of the reviewers (if the patch is authored by a non-committer). This is simply a matter of fetching Gerrit’s master branch, and then pushing those changes to the ASF git repo. The git-asf script automates and simplifies this process.</p>
134
135<h4 id="prerequisites">Prerequisites</h4>
136
137<p>Before we begin, some prerequisites/notes:</p>
138
139<ul>
140 <li>
141 <p>You should have git-gerrit and git-asf installed (available <a href="http://github.com/ceejatec/git-gerrit">here</a>) and set up properly.</p>
142 </li>
143 <li>
144 <p>We need the SHA1 hash of the commit we want to push to ASF. This is visible in the Gerrit Web UI as a comment when a change is merged (“Change has been successfully cherry-picked as …”).</p>
145 </li>
146 <li>
147 <p>You should have the credentials for pushing to the ASF repository set up in a .netrc file or stored in git. See <a href="https://git-wip-us.apache.org/#committers-getting-started">here</a> for more details on setting up git with your Apache credentials.</p>
148 </li>
149</ul>
150
151<h4 id="pushing-the-changes">Pushing the change(s)</h4>
152
153<p>Once the above is fulfilled, we can begin. Let <code>$SHA1</code> be the actual SHA1 hash of the commit we want to transmit from Gerrit to the ASF repo.</p>
154
155<ol>
156 <li><code>git asf commit $SHA1</code></li>
157</ol>
158
159<p>That’s all there is to it! If the patch spanned both Hyracks and AsterixDB, be sure to perform this process in both repositories.</p>
160
161
162</div>
163</div>
164
165
Till Westmann00f9bf22016-03-14 13:59:27 -0700166 <hr/>
Ian Maxon3dffc852015-07-13 20:17:09 -0700167
Till Westmann00f9bf22016-03-14 13:59:27 -0700168 <footer>
169 <div class="row">
Till Westmann00f9bf22016-03-14 13:59:27 -0700170 <div class="col-md-9 col-centered text-center">
171 <p/>
172 <p>&copy; Copyright 2016 The Apache Software foundation. All Rights Reserved. </p>
173 <p>Apache AsterixDB, the Apache AsterixDB logo, Apache, and the Apache feather logo are trademarks of the
174 Apache Software Foundation</p>
Ian Maxon3dffc852015-07-13 20:17:09 -0700175 </div>
Till Westmann00f9bf22016-03-14 13:59:27 -0700176 </div>
177 </footer>
178 </div> <!-- /container -->
Ian Maxon3dffc852015-07-13 20:17:09 -0700179
180 <!-- Bootstrap core JavaScript
181 ================================================== -->
182 <!-- Placed at the end of the document so the pages load faster -->
183 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
Ian Maxonf84cb812015-12-07 15:09:45 -0800184 <script src="js/bootstrap.min.js"></script>
Ian Maxon3dffc852015-07-13 20:17:09 -0700185 </body>
186</html>