blob: ff0868eaaefab9991145174ac933fadf04e94f15 [file] [log] [blame]
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Send a Pull Request</title>
<!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
<!--[if lt IE 9]>
<script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Le JavaScript -->
<script src="/assets/js/jquery-1.7.1.min.js" type="text/javascript"></script>
<script src="/assets/js/bootstrap-dropdown.js" type="text/javascript"></script>
<script src="/assets/js/jquery.tweet.js" type="text/javascript"></script>
<script src="/assets/js/application.js" type="text/javascript"></script>
<script src="/assets/js/bootstrap-transition.js"></script>
<script src="/assets/js/bootstrap-alert.js"></script>
<script src="/assets/js/bootstrap-modal.js"></script>
<script src="/assets/js/bootstrap-scrollspy.js"></script>
<script src="/assets/js/bootstrap-tab.js"></script>
<script src="/assets/js/bootstrap-tooltip.js"></script>
<script src="/assets/js/bootstrap-popover.js"></script>
<script src="/assets/js/bootstrap-button.js"></script>
<script src="/assets/js/bootstrap-collapse.js"></script>
<script src="/assets/js/bootstrap-carousel.js"></script>
<script src="/assets/js/bootstrap-typeahead.js"></script>
<!-- Le styles -->
<link href="/assets/css/bootstrap.css" rel="stylesheet">
<link href="/assets/css/application.css" rel="stylesheet">
<link rel="shortcut icon" href="/assets/img/favicon.ico">
</head>
<body><div style="background: red"><h1>2015/07/20 - Apache Deltacloud has been retired. </h1><h2>For more information, please explore the <a href="http://attic.apache.org/">Attic</a>. </h2></div>
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a class="brand" href="/"><img src="/assets/img/logo.png" width="152"
alt="Deltacloud API"/></a>
<ul class="nav top-nav">
<li><a href="/">Home</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">About<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="/about.html">What is Deltacloud?</a></li>
<li><a href="/drivers.html#drivers">Supported Providers</a></li>
</ul>
</li>
<li><a href="/download.html">Download</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Installation<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="/install-deltacloud.html">Install Deltacloud</a></li>
<li><a href="/run-deltacloud-server.html">Run the Deltacloud Server</a></li>
</ul>
</li>
<li class="dropdown">
<a href="/usage.html" class="dropdown-toggle" data-toggle="dropdown">Usage<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="/usage.html#usingapi">Using API</a></li>
<li><a href="/usage.html#clients">Client Libraries</a></li>
<li><a href="/command-tools.html">Command Line Tools</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">Contribute<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="/getting-sources.html">Getting Sources</a></li>
<li><a href="/how-to-contribute.html">How Can I Contribute?</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">API<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="/rest-api.html">Deltacloud REST API</a></li>
<li><a href="/curl-examples.html">Deltacloud API cURL examples</a></li>
<li><a href="/drivers.html">Drivers API</a></li>
</ul>
</li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown">CIMI<b class="caret"></b></a>
<ul class="dropdown-menu">
<li><a href="/cimi-rest.html">CIMI REST API</a></li>
<li><a href="/cimi-curl.html">CIMI cURL Examples</a></li>
</ul>
</li>
<li><a href="/contact.html">Contact</a></li>
</ul>
</div>
</div>
</div>
<div class="container content">
<p><br></p>
<ul class="breadcrumb">
<li>
<a href="how-to-contribute.html#how">How to contribute?</a> <span class="divider">/</span>
</li>
<li class="active">Send a pull request</li>
</ul><h3>GIT Workflow and sending a pull request</h3>
<hr><h4>Basics</h4>
<ul>
<li>Deltacloud uses Github for pull requests and patch reviews.</li>
<li>The deltacloud/deltacloud-core repository is just a mirror for the official ASF GIT repository.</li>
<li>The mirror script runs every 2 minutes so please be patient.</li>
<li>In order to have your patch accepted and pushed, you need to have signed the Apache Individual Contributor License Agreement</li>
<li>We use the official ASF repository for pushing patches (you need to be an ASF contributor with push rights for this), or you need to ask somebody with push rights to do so. If you are not Deltacloud API ASF project member with push rights, please ignore this information and issue a pull request for someone to push for you.</li>
</ul><hr><h4>Adding Deltacloud Github repository</h4>
<ul>
<li>
<b>Fork the "deltacloud/deltacloud-core"</b>
<a href="https://github.com/deltacloud/deltacloud-core">repository</a>
by click on the <b>Fork</b> tab at the top of the page
<br><br><br><div class="span8">
<img src="assets/img/git-Fork.png" alt="git Fork diagram" align="center">
</div>
<br><br><br><br>
</li>
<li>
<b>Clone your fork</b>
<pre>
$ git clone https://github.com/<i>your username</i>/deltacloud-core.git
</pre>
</li>
<li>
<p><b>Configure remotes</b></p>
<pre>
$ cd deltacloud-core
$ git remote add upstream https://github.com/deltacloud/deltacloud-core.git
$ git fetch upstream
</pre>
</li>
<li>
<p>For more details on forking git repositories see:
<a href="https://help.github.com/articles/fork-a-repo">The Official GitHub Help <b>Fork A Repo</b></a></p>
</li>
</ul><p><br><br></p>
<hr><h4>Basic GIT workflow</h4>
<ul>
<li>Commit some code changes
<pre>
$ git checkout -b <b>my branch</b>
<i>Coding your changes</i>
$ git commit -m "Commit message"
</pre>
</li>
<li><p>
<i><b>Tip:</b></i> If there is a <a href="https://issues.apache.org/jira/browse/DTACLOUD">JIRA</a>
ticket associated with this work <b>please</b> include the JIRA ID
in the commit message<br><b>For example:</b> <i>This change addresses: <b>DTACLOUD-123</b></i>
</p></li>
<li>Repeat the previous step until you finish the needed changes.</li>
</ul><hr><h4>Pushing your work</h4>
<p>
</p><ul>
<li>Update the original repo
<br><br><p>This will avoid possible merge conflicts and problems with applying your patches.</p>
<pre>
$ git checkout master
$ git pull
</pre>
</li>
<li>Push to your fork.
<pre>
$ git checkout my_work_topic
$ git rebase -i master (Tip: You can rename/squash commits at this point)
$ git push origin my_work_topic
</pre>
</li>
<hr>
<h4>Issue the Pull request</h4>
<p>
</p>
<ul>
<li>Navigate to your forked Github repository <br><b>For example:</b>https://github.com/<i>your username</i>/deltacloud-core.git
</li>
<li>click the <i>Pull Request</i> tab</li>
(Tip: You can use hub to automate this step)
<li>
<p>For more details on using pull requests see:
<a href="https://help.github.com/articles/using-pull-requests">The Official GitHub Help <b>For Using Pull Request</b></a></p>
</li>
</ul>
<hr>
<h4>Pull request / review process</h4>
<ul>
<li>Your <b>pull request</b> will appear <a href="https://github.com/deltacloud/deltacloud-core/pulls">here</a>
</li>
<li>All subscribers will be notified by email that a new pull request has been issued.
</li>
<li>When doing a review please follow our <a href="https://cwiki.apache.org/confluence/display/DTACLOUD/Deltacloud+API+code+style+guidelines">coding guidelines</a>
</li>
<li>Reviewers can leave comments on your pull request directly on github.
</li>
<li>Help on reviewing github pull requests can be found <a href="https://help.github.com/articles/using-pull-requests#reviewing-proposed-changes">here</a>
</li>
<li>If your pullrequest is not being reviewed, please request one on the <b>#deltacloud</b> IRC channel on <b>irc.freenode.org</b>
</li>
<li>Once your pull request gets ACKed, the person who did the review should <b>close</b> the pull request <b>without merging it</b>.
</li>
<li>The reviewer, or someone with push rights, should push the change to the official
Apache GIT repository:<br><b>https://github.com/apache/deltacloud</b>
</li>
<li>No changes should be pushed to the mirror used to create your fork, <br><b>https://github.com/deltacloud/deltacloud-core</b>
</li>
</ul>
<hr>
<h4>Contributors with push rights</h4>
<p>
</p>
<ul>
<li>Adding ASF as a remote branch
<pre>
$ git remote add apache https://git-wip-us.apache.org/repos/asf/deltacloud.git
$ git fetch apache
$ git checkout -b apache apache/master
</pre>
</li>
<li>Pushing patches
<pre>
$ git checkout topic_you_want_to_push
$ git rebase -i apache
$ git checkout apache
$ git merge topic_you_want_to_push
$ git push apache refs/heads/apache:master
</pre>
</li>
<li>
<b>Note:</b> Do not forget to git pull from the <i>apache</i> branch before merging changes
</li>
<li>
<p>Tip: To make all pull requests appear in your local GIT repository follow <a href="https://gist.github.com/piscisaureus/3342247">these</a> instructions.<br><br>
Then to get all pull requests locally issue:
</p>
<pre>
$ git fetch origin
</pre>
<p>Then to checkout a single pull request directly issue:</p>
<pre>
$ git checkout pr/NUMBER
</pre>
<p>instead of issueing:</p>
<pre>
$ git checkout topic_you_want_to_push
</pre>
<br><br><br><div class="modal-footer">
<a href="#" class="btn btn-primary" data-dismiss="modal">Close</a>
</div>
</li>
</ul>
</ul>
<footer class="footer">
<p class="pull-right"><span class='icon-circle-arrow-up'>&nbsp;</span><a href="#">Back to top</a></p>
<div class='row'>
<div class='span3'>
<img src="/assets/img/asf.png" alt="Apache Software Foundation"/>
</div>
<div class='span9'>
<strong>Apache Deltacloud</strong> is a top-level project at the <a
href="http://www.apache.org">Apache Software Foundation</a>,
having graduated from the ASF Incubator in October
2011. Through a collaborative and meritocratic development process, Apache
projects deliver enterprise-grade, freely available software products that
attract large communities of users.
</div>
</div>
</footer>
</div> <!-- /container -->
<!-- Piwik -->
<script type="text/javascript">
var pkBaseURL = (("https:" == document.location.protocol) ? "https://stats.salasaga.org/aeolus/piwik/" : "http://stats.salasaga.org/aeolus/piwik/");
document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E"));
</script><script type="text/javascript">
try {
var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 2);
piwikTracker.trackPageView();
piwikTracker.enableLinkTracking();
} catch( err ) {}
</script><noscript><p><img src="http://stats.salasaga.org/aeolus/piwik/piwik.php?idsite=2" style="border:0" alt="" /></p></noscript>
<!-- End Piwik Tracking Code -->
</body>
</html>