Adds section on git
authorWill Kahn-Greene <willg@bluesock.org>
Sat, 30 Apr 2011 15:17:35 +0000 (11:17 -0400)
committerWill Kahn-Greene <willg@bluesock.org>
Sat, 30 Apr 2011 15:17:35 +0000 (11:17 -0400)
* instructions for contributing patches
* learning git
* learning other utilities

docs/git.rst [new file with mode: 0644]
docs/hackinghowto.rst
docs/index.rst

diff --git a/docs/git.rst b/docs/git.rst
new file mode 100644 (file)
index 0000000..0db1dac
--- /dev/null
@@ -0,0 +1,68 @@
+==========================
+ Git, Cloning and Patches
+==========================
+
+GNU MediaGoblin uses git for all our version control and we have
+the repositories hosted on `Gitorious <http://gitorious.org/>`_.
+
+We have two repositories.  One is for the project and the other is for
+the project website.
+
+
+How to clone the project
+========================
+
+Do::
+
+    git clone git://gitorious.org/mediagoblin/mediagoblin.git
+
+
+How to send in patches
+======================
+
+All patches should be tied to issues in the `issue tracker
+<http://bugs.foocorp.net/projects/mediagoblin/issues>`_.
+That makes it a lot easier for everyone to track proposed changes and
+make sure your hard work doesn't get dropped on the floor!
+
+If there isn't an issue for what you're working on, please create
+one.  The better the description of what it is you're trying to
+fix/implement, the better everyone else is able to understand why
+you're doing what you're doing.
+
+There are two ways you could send in a patch.
+
+
+How to send in a patch from a publicly available clone
+------------------------------------------------------
+
+Add a comment to the issue you're working on with the following bits
+of information:
+
+* the url for your clone
+* the revs you want looked at
+* any details, questions, or other things that should be known
+
+
+How to send in a patch if you don't have a publicly available clone
+-------------------------------------------------------------------
+
+Assuming that the remote is our repository on gitorious and the branch
+to compare against is master, do the following:
+
+1. checkout the branch you did your work in
+2. do::
+
+      git format-patch -o patches origin/master
+
+3. either:
+
+   * tar up and attach the tarball to the issue you're working on, OR
+   * attach the patch files to the issue you're working on one at a
+     time
+
+
+How to learn git
+================
+
+Check out :ref:`hacking-howto-git`!
index 8b40e37d79b9c02da8ac881847bae6dccf25ba93..1096b97087afb2c4e1f15bd6d54852c56c30cf71 100644 (file)
@@ -165,8 +165,8 @@ FIXME - write this
 Tips for people new to coding
 =============================
 
-Python
-------
+Learning Python
+---------------
 
 GNU MediaGoblin is written using a programming language called `Python
 <http://python.org/>`_.
@@ -189,8 +189,8 @@ These are all excellent texts.
 FIXME - are there good quality Python tutorial videos?
 
 
-Libraries
----------
+Learning Libraries GNU MediaGoblin uses
+---------------------------------------
 
 GNU MediaGoblin uses a variety of libraries in order to do what it
 does.  These libraries are listed in the :ref:`beardomatic-chapter`
@@ -206,3 +206,35 @@ at `Python Miro Community <http://python.mirocommunity.org>`_ [0]_.
 
 If you have questions or need help, find us on the mailing list and on
 IRC.
+
+
+.. _hacking-howto-git:
+
+Learning git
+------------
+
+git is an interesting and very powerful tool.  Like all powerful
+tools, it has a learning curve.
+
+If you're new to git, we highly recommend the following resources for
+getting the hang of it:
+
+* `Learn Git <http://learn.github.com/p/intro.html>`_ --- the GitHub
+  intro to git
+* `Pro Git <http://progit.org/book/>`_ --- fantastic book
+* `Git casts <http://gitcasts.com/>`_ --- screencast covering git
+  usage
+* `Git Reference <http://gitref.org/>`_ --- Git reference that makes
+  it easier to get the hang of git if you're coming from other version
+  control systems
+
+
+Learning other utilities
+------------------------
+
+The `OpenHatch <http://openhatch.org/>`_ site has a series of
+`training missions <http://openhatch.org/missions/>`_ which are
+designed to help you learn how to use these tools.
+
+If you're new to tar, diff and patch, we highly recommend you sign up
+with OpenHatch and do the missions.
index fc8cc64246adcc983698163d816665af548eb711..935e354bb80e7970b9e6141685a39b917faf1797 100644 (file)
@@ -17,6 +17,7 @@ Table of Contents:
    deploymenthowto
    hackinghowto
    theminghowto
+   git
    designdecisions
    vision
    beardomatic