summaryrefslogtreecommitdiffstats
path: root/site
diff options
context:
space:
mode:
authorFrancis Rowe <info@gluglug.org.uk>2015-02-23 02:22:13 (EST)
committer Francis Rowe <info@gluglug.org.uk>2015-02-23 02:22:13 (EST)
commit99937b32e5881d47109ab585a3dfe09de3bc9f08 (patch)
tree9415f762f0709868509f9bb8959cb872dd139cf1 /site
parent53e59736bb82224e7c39e5786bb8870a9dfc6a4d (diff)
downloadlibreboot.org-99937b32e5881d47109ab585a3dfe09de3bc9f08.zip
libreboot.org-99937b32e5881d47109ab585a3dfe09de3bc9f08.tar.gz
libreboot.org-99937b32e5881d47109ab585a3dfe09de3bc9f08.tar.bz2
Instructions for contributing patches
Diffstat (limited to 'site')
-rw-r--r--site/download/index.php93
1 files changed, 80 insertions, 13 deletions
diff --git a/site/download/index.php b/site/download/index.php
index f4c5753..f1ed4df 100644
--- a/site/download/index.php
+++ b/site/download/index.php
@@ -182,8 +182,8 @@
<h1>Git repositories (development)</h1>
<p>
- These git repositories are intended for the development of <?php echo $lbProjectName; ?>.
- The ROM images built from git are untested, and therefore not
+ The git repositories are intended for developing <?php echo $lbProjectName; ?>.
+ ROM images built from the git repository are untested, and therefore not
recommended for general use (you should assume that they will
brick your computer).
</p>
@@ -198,26 +198,93 @@
can be found at <a href="../gitdocs/index.html">../gitdocs/index.html</a>.
</p>
- <h2>Main repositories</h2>
+ <h2>How to download</h2>
<p>
- This is the main repository, hosted by the <?php echo $lbProjectName; ?> project.
+ Firmware (coreboot distribution):<br/>
+ $ <b>git clone <a href="<?php echo $lbFirmwareGitwebAddress; ?>"><?php echo $lbFirmwareGitRepoAddress; ?></a></b>
</p>
<p>
- Firmware: $ <b>git clone <a href="<?php echo $lbFirmwareGitwebAddress; ?>"><?php echo $lbFirmwareGitRepoAddress; ?></a></b><br/>
- Website: $ <b>git clone <a href="<?php echo $lbWebsiteGitwebAddress; ?>"><?php echo $lbWebsiteGitRepoAddress; ?></a></b>
+ <?php echo $lbProjectNameCapitalized ?> website:<br/>
+ $ <b>git clone <a href="<?php echo $lbWebsiteGitwebAddress; ?>"><?php echo $lbWebsiteGitRepoAddress; ?></a></b>
</p>
<p>
- <a href="../github/">Please do not use GitHub!</a>
+ Backup repositories can be found at <a href="#gitbackup">#gitbackup</a>.
</p>
+ <ul class="ulnav">
+ <li><b><a href="../github/">Please do not use GitHub!</a></b></li>
+ <li><a href="#contrib">How to submit a patch</a></li>
+ </ul>
- <h2>Backup repositories</h2>
+ <h2 id="contrib">Submitting patches to <?php echo $lbProjectName; ?></h3>
<p>
- Backup repositories, in case the main repository is down.
- Although these are regularly updated by the <?php echo $lbProjectName; ?> project, you
- should ideally use the main repository.
+ The <a href="http://git-scm.com/doc">git documentation</a> describes how to use git.
</p>
<p>
- <a href="../github/">Please do not use GitHub!</a>
+ Make sure that you configured git so that your name and email
+ address appear in the commits that you create:<br/>
+ $ <b>git config --global user.name &quot;Your Name&quot;</b><br/>
+ $ <b>git config --global user.email your@emailaddress.com</b>
+ </p>
+ <p>
+ The following is also useful:<br/>
+ $ <b>git config --global core.editor nano</b><br/>
+ $ <b>git config --global color.status auto</b><br/>
+ $ <b>git config --global color.branch auto</b><br/>
+ $ <b>git config --global color.interactive auto</b><br/>
+ $ <b>git config --global color.diff auto</b>
+ </p>
+ <p>
+ Clone the git repository, and make your desired changes. You can make one or several commits (as many as you like).
+ Generally speaking, you should create separate commits on top of each other, for each kind of change.
+ </p>
+ <p>
+ Once you have made your change(s), you can use this to check the status:<br/>
+ $ <b>git status</b>
+ </p>
+ <p>
+ The status command will show any untracked files that you have. Add them using <b>git add path/to/file</b>.
+ You should also add any other files that are listed as modified in the git status. If there are deleted
+ files in the git status, you can use <b>git rm path/to/file</b>. As long as you have added all the untracked
+ files, it is generally easier to use:<br/>
+ $ <b>git commit -a</b>
+ </p>
+ <p>
+ If you need to make a change to the current commit, you can do so with:<br/>
+ $ <b>git commit --amend</b><br/>
+ or:<br/>
+ $ <b>git commit -a --amend</b>
+ </p>
+ <p>
+ In your local git tree, you can use this to check your commits:<br/>
+ $ <b>git log</b>
+ </p>
+ <p>
+ Shortened git logs showing the short commit ID and the commit title, plus info about what branch
+ you are on, and where all your remotes/heads are:<br/>
+ $ <b>git config --global --add alias.lol &quot;log --graph --decorate --pretty=oneline --abbrev-commit --all&quot;</b><br/>
+ From then on, you can use:<br/>
+ $ <b>git lol</b><br/>
+ This is like <b>git log</b>, but on steroids.
+ </p>
+ <h3>Method 1: host a repository</h3>
+ <p>
+ One way of contribiting a patch for review is to host a repository containing your modified branch.
+ Give the checkout details to the <?php echo $lbProjectName; ?> project, along with information
+ on which commits in what branch contain your changes.
+ Contact the <?php echo $lbProjectName; ?> project using the details on the <a href="../">home page</a>.
+ </p>
+ <h3>Method 2: git format-patch -N</h3>
+ <p>
+ Use this method (replace N with the number of commits that you made) and send the .patch files to the
+ <?php echo $lbProjectName; ?> project, along with details on what branch and revision these were
+ made on top of.
+ Contact the <?php echo $lbProjectName; ?> project using the details on the <a href="../">home page</a>.
+ </p>
+
+ <h2 id="gitbackup">Backup repositories</h2>
+ <p>
+ Generally speaking, you should use the main repositories. These repositories are provided
+ as backups, in case the main repositories are down.
</p>
<h3>Firmware (coreboot distribution)</h3>
@@ -232,7 +299,7 @@
?>
</p>
- <h3>Project website</h3>
+ <h3><?php echo $lbProjectNameCapitalized; ?> website</h3>
<p>
<?php
for ($server=0; $server<count($lbWebsiteBackupGitRepoAddress); $server++) {