summaryrefslogtreecommitdiff
path: root/doc/doc_index/0.3.0
diff options
context:
space:
mode:
Diffstat (limited to 'doc/doc_index/0.3.0')
-rw-r--r--doc/doc_index/0.3.0/.buildinfo4
-rw-r--r--doc/doc_index/0.3.0/_sources/changes.txt373
-rw-r--r--doc/doc_index/0.3.0/_sources/index.txt24
-rw-r--r--doc/doc_index/0.3.0/_sources/intro.txt112
-rw-r--r--doc/doc_index/0.3.0/_sources/reference.txt153
-rw-r--r--doc/doc_index/0.3.0/_sources/roadmap.txt6
-rw-r--r--doc/doc_index/0.3.0/_sources/tutorial.txt374
-rw-r--r--doc/doc_index/0.3.0/_sources/whatsnew.txt59
-rw-r--r--doc/doc_index/0.3.0/_static/basic.css417
-rw-r--r--doc/doc_index/0.3.0/_static/default.css247
-rw-r--r--doc/doc_index/0.3.0/_static/doctools.js232
-rw-r--r--doc/doc_index/0.3.0/_static/file.pngbin392 -> 0 bytes
-rw-r--r--doc/doc_index/0.3.0/_static/jquery.js32
-rw-r--r--doc/doc_index/0.3.0/_static/minus.pngbin199 -> 0 bytes
-rw-r--r--doc/doc_index/0.3.0/_static/plus.pngbin199 -> 0 bytes
-rw-r--r--doc/doc_index/0.3.0/_static/pygments.css61
-rw-r--r--doc/doc_index/0.3.0/_static/searchtools.js467
-rw-r--r--doc/doc_index/0.3.0/changes.html602
-rw-r--r--doc/doc_index/0.3.0/docs_0.3.0.zipbin124676 -> 0 bytes
-rw-r--r--doc/doc_index/0.3.0/genindex.html607
-rw-r--r--doc/doc_index/0.3.0/index.html198
-rw-r--r--doc/doc_index/0.3.0/intro.html227
-rw-r--r--doc/doc_index/0.3.0/modindex.html184
-rw-r--r--doc/doc_index/0.3.0/objects.inv321
-rw-r--r--doc/doc_index/0.3.0/reference.html3865
-rw-r--r--doc/doc_index/0.3.0/roadmap.html113
-rw-r--r--doc/doc_index/0.3.0/search.html97
-rw-r--r--doc/doc_index/0.3.0/searchindex.js1
-rw-r--r--doc/doc_index/0.3.0/tutorial.html485
-rw-r--r--doc/doc_index/0.3.0/whatsnew.html167
30 files changed, 0 insertions, 9428 deletions
diff --git a/doc/doc_index/0.3.0/.buildinfo b/doc/doc_index/0.3.0/.buildinfo
deleted file mode 100644
index 3cf24707..00000000
--- a/doc/doc_index/0.3.0/.buildinfo
+++ /dev/null
@@ -1,4 +0,0 @@
-# Sphinx build info version 1
-# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
-config: 10f1f71f88276addc378308055759e24
-tags: fbb0d17656682115ca4d033fb2f83ba1
diff --git a/doc/doc_index/0.3.0/_sources/changes.txt b/doc/doc_index/0.3.0/_sources/changes.txt
deleted file mode 100644
index 730d5867..00000000
--- a/doc/doc_index/0.3.0/_sources/changes.txt
+++ /dev/null
@@ -1,373 +0,0 @@
-=========
-Changelog
-=========
-
-0.3.0 Beta 3
-============
-* Added unicode support for author names. Commit.author.name is now unicode instead of string.
-
-0.3.0 Beta 2
-============
-* Added python 2.4 support
-
-0.3.0 Beta 1
-============
-Renamed Modules
----------------
-* For consistency with naming conventions used in sub-modules like gitdb, the following modules have been renamed
-
- * git.utils -> git.util
- * git.errors -> git.exc
- * git.objects.utils -> git.objects.util
-
-General
--------
-* Object instances, and everything derived from it, now use binary sha's internally. The 'sha' member was removed, in favor of the 'binsha' member. An 'hexsha' property is available for convenient conversions. They may only be initialized using their binary shas, reference names or revision specs are not allowed anymore.
-* IndexEntry instances contained in IndexFile.entries now use binary sha's. Use the .hexsha property to obtain the hexadecimal version. The .sha property was removed to make the use of the respective sha more explicit.
-* If objects are instantiated explicitly, a binary sha is required to identify the object, where previously any rev-spec could be used. The ref-spec compatible version still exists as Object.new or Repo.commit|Repo.tree respectively.
-* The .data attribute was removed from the Object type, to obtain plain data, use the data_stream property instead.
-* ConcurrentWriteOperation was removed, and replaced by LockedFD
-* IndexFile.get_entries_key was renamed to entry_key
-* IndexFile.write_tree: removed missing_ok keyword, its always True now. Instead of raising GitCommandError it raises UnmergedEntriesError. This is required as the pure-python implementation doesn't support the missing_ok keyword yet.
-* diff.Diff.null_hex_sha renamed to NULL_HEX_SHA, to be conforming with the naming in the Object base class
-
-
-0.2 Beta 2
-===========
- * Commit objects now carry the 'encoding' information of their message. It wasn't parsed previously, and defaults to UTF-8
- * Commit.create_from_tree now uses a pure-python implementation, mimicing git-commit-tree
-
-0.2
-=====
-General
--------
-* file mode in Tree, Blob and Diff objects now is an int compatible to definintiions
- in the stat module, allowing you to query whether individual user, group and other
- read, write and execute bits are set.
-* Adjusted class hierarchy to generally allow comparison and hash for Objects and Refs
-* Improved Tag object which now is a Ref that may contain a tag object with additional
- Information
-* id_abbrev method has been removed as it could not assure the returned short SHA's
- where unique
-* removed basename method from Objects with path's as it replicated features of os.path
-* from_string and list_from_string methods are now private and were renamed to
- _from_string and _list_from_string respectively. As part of the private API, they
- may change without prior notice.
-* Renamed all find_all methods to list_items - this method is part of the Iterable interface
- that also provides a more efficients and more responsive iter_items method
-* All dates, like authored_date and committer_date, are stored as seconds since epoc
- to consume less memory - they can be converted using time.gmtime in a more suitable
- presentation format if needed.
-* Named method parameters changed on a wide scale to unify their use. Now git specific
- terms are used everywhere, such as "Reference" ( ref ) and "Revision" ( rev ).
- Prevously multiple terms where used making it harder to know which type was allowed
- or not.
-* Unified diff interface to allow easy diffing between trees, trees and index, trees
- and working tree, index and working tree, trees and index. This closely follows
- the git-diff capabilities.
-* Git.execute does not take the with_raw_output option anymore. It was not used
- by anyone within the project and False by default.
-
-
-Item Iteration
---------------
-* Previously one would return and process multiple items as list only which can
- hurt performance and memory consumption and reduce response times.
- iter_items method provide an iterator that will return items on demand as parsed
- from a stream. This way any amount of objects can be handled.
-* list_items method returns IterableList allowing to access list members by name
-
-objects Package
-----------------
-* blob, tree, tag and commit module have been moved to new objects package. This should
- not affect you though unless you explicitly imported individual objects. If you just
- used the git package, names did not change.
-
-Blob
-----
-* former 'name' member renamed to path as it suits the actual data better
-
-GitCommand
------------
-* git.subcommand call scheme now prunes out None from the argument list, allowing
- to be called more confortably as None can never be a valid to the git command
- if converted to a string.
-* Renamed 'git_dir' attribute to 'working_dir' which is exactly how it is used
-
-Commit
-------
-* 'count' method is not an instance method to increase its ease of use
-* 'name_rev' property returns a nice name for the commit's sha
-
-Config
-------
-* The git configuration can now be read and manipulated directly from within python
- using the GitConfigParser
-* Repo.config_reader() returns a read-only parser
-* Repo.config_writer() returns a read-write parser
-
-Diff
-----
-* Members a a_commit and b_commit renamed to a_blob and b_blob - they are populated
- with Blob objects if possible
-* Members a_path and b_path removed as this information is kept in the blobs
-* Diffs are now returned as DiffIndex allowing to more quickly find the kind of
- diffs you are interested in
-
-Diffing
--------
-* Commit and Tree objects now support diffing natively with a common interface to
- compare agains other Commits or Trees, against the working tree or against the index.
-
-Index
------
-* A new Index class allows to read and write index files directly, and to perform
- simple two and three way merges based on an arbitrary index.
-
-Referernces
-------------
-* References are object that point to a Commit
-* SymbolicReference are a pointer to a Reference Object, which itself points to a specific
- Commit
-* They will dynmically retrieve their object at the time of query to assure the information
- is actual. Recently objects would be cached, hence ref object not be safely kept
- persistent.
-
-Repo
-----
-* Moved blame method from Blob to repo as it appeared to belong there much more.
-* active_branch method now returns a Head object instead of a string with the name
- of the active branch.
-* tree method now requires a Ref instance as input and defaults to the active_branche
- instead of master
-* is_dirty now takes additional arguments allowing fine-grained control about what is
- considered dirty
-* Removed the following methods:
-
- - 'log' method as it as effectively the same as the 'commits' method
- - 'commits_since' as it is just a flag given to rev-list in Commit.iter_items
- - 'commit_count' as it was just a redirection to the respective commit method
- - 'commits_between', replaced by a note on the iter_commits method as it can achieve the same thing
- - 'commit_delta_from' as it was a very special case by comparing two different repjrelated repositories, i.e. clones, git-rev-list would be sufficient to find commits that would need to be transferred for example.
- - 'create' method which equals the 'init' method's functionality
- - 'diff' - it returned a mere string which still had to be parsed
- - 'commit_diff' - moved to Commit, Tree and Diff types respectively
-
-* Renamed the following methods:
-
- - commits to iter_commits to improve the performance, adjusted signature
- - init_bare to init, implying less about the options to be used
- - fork_bare to clone, as it was to represent general clone functionality, but implied
- a bare clone to be more versatile
- - archive_tar_gz and archive_tar and replaced by archive method with different signature
-
-* 'commits' method has no max-count of returned commits anymore, it now behaves like git-rev-list
-* The following methods and properties were added
-
- - 'untracked_files' property, returning all currently untracked files
- - 'head', creates a head object
- - 'tag', creates a tag object
- - 'iter_trees' method
- - 'config_reader' method
- - 'config_writer' method
- - 'bare' property, previously it was a simple attribute that could be written
-
-* Renamed the following attributes
-
- - 'path' is now 'git_dir'
- - 'wd' is now 'working_dir'
-
-* Added attribute
-
- - 'working_tree_dir' which may be None in case of bare repositories
-
-Remote
-------
-* Added Remote object allowing easy access to remotes
-* Repo.remotes lists all remotes
-* Repo.remote returns a remote of the specified name if it exists
-
-Test Framework
---------------
-* Added support for common TestCase base class that provides additional functionality
- to receive repositories tests can also write to. This way, more aspects can be
- tested under real-world ( un-mocked ) conditions.
-
-Tree
-----
-* former 'name' member renamed to path as it suits the actual data better
-* added traverse method allowing to recursively traverse tree items
-* deleted blob method
-* added blobs and trees properties allowing to query the respective items in the
- tree
-* now mimics behaviour of a read-only list instead of a dict to maintain order.
-* content_from_string method is now private and not part of the public API anymore
-
-
-0.1.6
-=====
-
-General
--------
-* Added in Sphinx documentation.
-
-* Removed ambiguity between paths and treeishs. When calling commands that
- accept treeish and path arguments and there is a path with the same name as
- a treeish git cowardly refuses to pick one and asks for the command to use
- the unambiguous syntax where '--' seperates the treeish from the paths.
-
-* ``Repo.commits``, ``Repo.commits_between``, ``Reop.commits_since``,
- ``Repo.commit_count``, ``Repo.commit``, ``Commit.count`` and
- ``Commit.find_all`` all now optionally take a path argument which
- constrains the lookup by path. This changes the order of the positional
- arguments in ``Repo.commits`` and ``Repo.commits_since``.
-
-Commit
-------
-* ``Commit.message`` now contains the full commit message (rather than just
- the first line) and a new property ``Commit.summary`` contains the first
- line of the commit message.
-
-* Fixed a failure when trying to lookup the stats of a parentless commit from
- a bare repo.
-
-Diff
-----
-* The diff parser is now far faster and also addresses a bug where
- sometimes b_mode was not set.
-
-* Added support for parsing rename info to the diff parser. Addition of new
- properties ``Diff.renamed``, ``Diff.rename_from``, and ``Diff.rename_to``.
-
-Head
-----
-* Corrected problem where branches was only returning the last path component
- instead of the entire path component following refs/heads/.
-
-Repo
-----
-* Modified the gzip archive creation to use the python gzip module.
-
-* Corrected ``commits_between`` always returning None instead of the reversed
- list.
-
-
-0.1.5
-=====
-
-General
--------
-* upgraded to Mock 0.4 dependency.
-
-* Replace GitPython with git in repr() outputs.
-
-* Fixed packaging issue caused by ez_setup.py.
-
-Blob
-----
-* No longer strip newlines from Blob data.
-
-Commit
-------
-* Corrected problem with git-rev-list --bisect-all. See
- http://groups.google.com/group/git-python/browse_thread/thread/aed1d5c4b31d5027
-
-Repo
-----
-* Corrected problems with creating bare repositories.
-
-* Repo.tree no longer accepts a path argument. Use:
-
- >>> dict(k, o for k, o in tree.items() if k in paths)
-
-* Made daemon export a property of Repo. Now you can do this:
-
- >>> exported = repo.daemon_export
- >>> repo.daemon_export = True
-
-* Allows modifying the project description. Do this:
-
- >>> repo.description = "Foo Bar"
- >>> repo.description
- 'Foo Bar'
-
-* Added a read-only property Repo.is_dirty which reflects the status of the
- working directory.
-
-* Added a read-only Repo.active_branch property which returns the name of the
- currently active branch.
-
-
-Tree
-----
-* Switched to using a dictionary for Tree contents since you will usually want
- to access them by name and order is unimportant.
-
-* Implemented a dictionary protocol for Tree objects. The following:
-
- child = tree.contents['grit']
-
- becomes:
-
- child = tree['grit']
-
-* Made Tree.content_from_string a static method.
-
-0.1.4.1
-=======
-
-* removed ``method_missing`` stuff and replaced with a ``__getattr__``
- override in ``Git``.
-
-0.1.4
-=====
-
-* renamed ``git_python`` to ``git``. Be sure to delete all pyc files before
- testing.
-
-Commit
-------
-* Fixed problem with commit stats not working under all conditions.
-
-Git
----
-* Renamed module to cmd.
-
-* Removed shell escaping completely.
-
-* Added support for ``stderr``, ``stdin``, and ``with_status``.
-
-* ``git_dir`` is now optional in the constructor for ``git.Git``. Git now
- falls back to ``os.getcwd()`` when git_dir is not specified.
-
-* add a ``with_exceptions`` keyword argument to git commands.
- ``GitCommandError`` is raised when the exit status is non-zero.
-
-* add support for a ``GIT_PYTHON_TRACE`` environment variable.
- ``GIT_PYTHON_TRACE`` allows us to debug GitPython's usage of git through
- the use of an environment variable.
-
-Tree
-----
-* Fixed up problem where ``name`` doesn't exist on root of tree.
-
-Repo
-----
-* Corrected problem with creating bare repo. Added ``Repo.create`` alias.
-
-0.1.2
-=====
-
-Tree
-----
-* Corrected problem with ``Tree.__div__`` not working with zero length files.
- Removed ``__len__`` override and replaced with size instead. Also made size
- cach properly. This is a breaking change.
-
-0.1.1
-=====
-Fixed up some urls because I'm a moron
-
-0.1.0
-=====
-initial release
diff --git a/doc/doc_index/0.3.0/_sources/index.txt b/doc/doc_index/0.3.0/_sources/index.txt
deleted file mode 100644
index 1079c5c7..00000000
--- a/doc/doc_index/0.3.0/_sources/index.txt
+++ /dev/null
@@ -1,24 +0,0 @@
-.. GitPython documentation master file, created by sphinx-quickstart on Sat Jan 24 11:51:01 2009.
- You can adapt this file completely to your liking, but it should at least
- contain the root `toctree` directive.
-
-GitPython Documentation
-=======================
-
-.. toctree::
- :maxdepth: 2
-
- intro
- whatsnew
- tutorial
- reference
- roadmap
- changes
-
-Indices and tables
-==================
-
-* :ref:`genindex`
-* :ref:`modindex`
-* :ref:`search`
-
diff --git a/doc/doc_index/0.3.0/_sources/intro.txt b/doc/doc_index/0.3.0/_sources/intro.txt
deleted file mode 100644
index c96766fb..00000000
--- a/doc/doc_index/0.3.0/_sources/intro.txt
+++ /dev/null
@@ -1,112 +0,0 @@
-.. _intro_toplevel:
-
-==================
-Overview / Install
-==================
-
-GitPython is a python library used to interact with git repositories, high-level like git-porcelain, or low-level like git-plumbing.
-
-It provides abstractions of git objects for easy access of repository data, and additionally allows you to access the git repository more directly using either a pure python implementation, or the faster, but more resource intensive git command implementation.
-
-The object database implementation is optimized for handling large quantities of objects and large datasets, which is achieved by using low-level structures and data streaming.
-
-Requirements
-============
-
-* `Git`_ 1.7.0 or newer
- It should also work with older versions, but it may be that some operations
- involving remotes will not work as expected.
-* `GitDB`_ - a pure python git database implementation
-
- * `async`_ - asynchronous task scheduling
-
-* `Python Nose`_ - used for running the tests
-* `Mock by Michael Foord`_ used for tests. Requires version 0.5
-
-.. _Git: http://git-scm.com/
-.. _Python Nose: http://code.google.com/p/python-nose/
-.. _Mock by Michael Foord: http://www.voidspace.org.uk/python/mock.html
-.. _GitDB: http://pypi.python.org/pypi/gitdb
-.. _async: http://pypi.python.org/pypi/async
-
-Installing GitPython
-====================
-
-Installing GitPython is easily done using
-`setuptools`_. Assuming it is
-installed, just run the following from the command-line:
-
-.. sourcecode:: none
-
- # easy_install GitPython
-
-This command will download the latest version of GitPython from the
-`Python Package Index <http://pypi.python.org/pypi/GitPython>`_ and install it
-to your system. More information about ``easy_install`` and pypi can be found
-here:
-
-* `setuptools`_
-* `install setuptools <http://peak.telecommunity.com/DevCenter/EasyInstall#installation-instructions>`_
-* `pypi <http://pypi.python.org/pypi/SQLAlchemy>`_
-
-.. _setuptools: http://peak.telecommunity.com/DevCenter/setuptools
-
-Alternatively, you can install from the distribution using the ``setup.py``
-script:
-
-.. sourcecode:: none
-
- # python setup.py install
-
-.. note:: In this case, you have to manually install `GitDB`_ and `async`_ as well. It would be recommended to use the :ref:`git source repository <source-code-label>` in that case.
-
-Getting Started
-===============
-
-* :ref:`tutorial-label` - This tutorial provides a walk-through of some of
- the basic functionality and concepts used in GitPython. It, however, is not
- exhaustive so you are encouraged to spend some time in the
- :ref:`api_reference_toplevel`.
-
-API Reference
-=============
-
-An organized section of the GitPthon API is at :ref:`api_reference_toplevel`.
-
-.. _source-code-label:
-
-Source Code
-===========
-
-GitPython's git repo is available on Gitorious and GitHub, which can be browsed at:
-
- * http://gitorious.org/projects/git-python/
- * http://github.com/Byron/GitPython
-
-and cloned using::
-
- $ git clone git://gitorious.org/git-python/mainline.git git-python
- $ git clone git://github.com/Byron/GitPython.git git-python
-
-Initialize all submodules to obtain the required dependencies with::
-
- $ cd git-python
- $ git submodule update --init --recursive
-
-Finally verify the installation by running the `nose powered <http://code.google.com/p/python-nose/>`_ unit tests::
-
- $ nosetests
-
-Mailing List
-============
-http://groups.google.com/group/git-python
-
-Issue Tracker
-=============
-http://byronimo.lighthouseapp.com/projects/51787-gitpython/milestones
-
-License Information
-===================
-GitPython is licensed under the New BSD License. See the LICENSE file for
-more information.
-
diff --git a/doc/doc_index/0.3.0/_sources/reference.txt b/doc/doc_index/0.3.0/_sources/reference.txt
deleted file mode 100644
index b6697d71..00000000
--- a/doc/doc_index/0.3.0/_sources/reference.txt
+++ /dev/null
@@ -1,153 +0,0 @@
-.. _api_reference_toplevel:
-
-API Reference
-=============
-
-Objects.Base
-------------
-
-.. automodule:: git.objects.base
- :members:
- :undoc-members:
-
-Objects.Blob
-------------
-
-.. automodule:: git.objects.blob
- :members:
- :undoc-members:
-
-Objects.Commit
---------------
-
-.. automodule:: git.objects.commit
- :members:
- :undoc-members:
-
-Objects.Tag
------------
-
-.. automodule:: git.objects.tag
- :members:
- :undoc-members:
-
-Objects.Tree
-------------
-
-.. automodule:: git.objects.tree
- :members:
- :undoc-members:
-
-Objects.Functions
------------------
-
-.. automodule:: git.objects.fun
- :members:
- :undoc-members:
-
-Objects.Submodule
------------------
-
-.. automodule:: git.objects.submodule
- :members:
- :undoc-members:
-
-Objects.Util
--------------
-
-.. automodule:: git.objects.util
- :members:
- :undoc-members:
-
-Index.Base
-----------
-
-.. automodule:: git.index.base
- :members:
- :undoc-members:
-
-Index.Functions
----------------
-
-.. automodule:: git.index.fun
- :members:
- :undoc-members:
-
-Index.Types
------------
-
-.. automodule:: git.index.typ
- :members:
- :undoc-members:
-
-Index.Util
--------------
-
-.. automodule:: git.index.util
- :members:
- :undoc-members:
-
-GitCmd
-------
-
-.. automodule:: git.cmd
- :members:
- :undoc-members:
-
-
-Config
-------
-
-.. automodule:: git.config
- :members:
- :undoc-members:
-
-Diff
-----
-
-.. automodule:: git.diff
- :members:
- :undoc-members:
-
-Errors
-------
-
-.. automodule:: git.errors
- :members:
- :undoc-members:
-
-
-Refs
-----
-
-.. automodule:: git.refs
- :members:
- :undoc-members:
-
-Remote
-------
-
-.. automodule:: git.remote
- :members:
- :undoc-members:
-
-Repo.Base
----------
-
-.. automodule:: git.repo.base
- :members:
- :undoc-members:
-
-Repo.Functions
---------------
-
-.. automodule:: git.repo.fun
- :members:
- :undoc-members:
-
-Util
-----
-
-.. automodule:: git.util
- :members:
- :undoc-members:
diff --git a/doc/doc_index/0.3.0/_sources/roadmap.txt b/doc/doc_index/0.3.0/_sources/roadmap.txt
deleted file mode 100644
index a6bdc3a0..00000000
--- a/doc/doc_index/0.3.0/_sources/roadmap.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-
-#######
-Roadmap
-#######
-The full list of milestones including associated tasks can be found on lighthouse: http://byronimo.lighthouseapp.com/projects/51787-gitpython/milestones
-
diff --git a/doc/doc_index/0.3.0/_sources/tutorial.txt b/doc/doc_index/0.3.0/_sources/tutorial.txt
deleted file mode 100644
index 9899c1bc..00000000
--- a/doc/doc_index/0.3.0/_sources/tutorial.txt
+++ /dev/null
@@ -1,374 +0,0 @@
-.. _tutorial_toplevel:
-
-.. highlight:: python
-
-.. _tutorial-label:
-
-==================
-GitPython Tutorial
-==================
-
-GitPython provides object model access to your git repository. This tutorial is composed of multiple sections, each of which explains a real-life usecase.
-
-Initialize a Repo object
-************************
-
-The first step is to create a ``Repo`` object to represent your repository::
-
- from git import *
- repo = Repo("/Users/mtrier/Development/git-python")
- assert repo.bare == False
-
-In the above example, the directory ``/Users/mtrier/Development/git-python`` is my working repository and contains the ``.git`` directory. You can also initialize GitPython with a *bare* repository::
-
- repo = Repo.init("/var/git/git-python.git", bare=True)
- assert repo.bare == True
-
-A repo object provides high-level access to your data, it allows you to create and delete heads, tags and remotes and access the configuration of the repository::
-
- repo.config_reader() # get a config reader for read-only access
- repo.config_writer() # get a config writer to change configuration
-
-Query the active branch, query untracked files or whether the repository data has been modified::
-
- repo.is_dirty()
- False
- repo.untracked_files
- ['my_untracked_file']
-
-Clone from existing repositories or initialize new empty ones::
-
- cloned_repo = repo.clone("to/this/path")
- new_repo = repo.init("path/for/new/repo")
-
-Archive the repository contents to a tar file::
-
- repo.archive(open("repo.tar",'w'))
-
-
-Object Databases
-****************
-``Repo`` instances are powered by its object database instance which will be used when extracting any data, or when writing new objects.
-
-The type of the database determines certain performance characteristics, such as the quantity of objects that can be read per second, the resource usage when reading large data files, as well as the average memory footprint of your application.
-
-GitDB
-=====
-The GitDB is a pure-python implementation of the git object database. It is the default database to use in GitPython 0.3. Its uses less memory when handling huge files, but will be 2 to 5 times slower when extracting large quantities small of objects from densely packed repositories::
-
- repo = Repo("path/to/repo", odbt=GitDB)
-
-GitCmdObjectDB
-==============
-The git command database uses persistent git-cat-file instances to read repository information. These operate very fast under all conditions, but will consume additional memory for the process itself. When extracting large files, memory usage will be much higher than the one of the ``GitDB``::
-
- repo = Repo("path/to/repo", odbt=GitCmdObjectDB)
-
-Examining References
-********************
-
-References are the tips of your commit graph from which you can easily examine the history of your project::
-
- heads = repo.heads
- master = heads.master # lists can be accessed by name for convenience
- master.commit # the commit pointed to by head called master
- master.rename("new_name") # rename heads
-
-Tags are (usually immutable) references to a commit and/or a tag object::
-
- tags = repo.tags
- tagref = tags[0]
- tagref.tag # tags may have tag objects carrying additional information
- tagref.commit # but they always point to commits
- repo.delete_tag(tagref) # delete or
- repo.create_tag("my_tag") # create tags using the repo for convenience
-
-A symbolic reference is a special case of a reference as it points to another reference instead of a commit::
-
- head = repo.head # the head points to the active branch/ref
- master = head.reference # retrieve the reference the head points to
- master.commit # from here you use it as any other reference
-
-Modifying References
-********************
-You can easily create and delete reference types or modify where they point to::
-
- repo.delete_head('master') # delete an existing head
- master = repo.create_head('master') # create a new one
- master.commit = 'HEAD~10' # set branch to another commit without changing index or working tree
-
-Create or delete tags the same way except you may not change them afterwards::
-
- new_tag = repo.create_tag('my_tag', 'my message')
- repo.delete_tag(new_tag)
-
-Change the symbolic reference to switch branches cheaply ( without adjusting the index or the working copy )::
-
- new_branch = repo.create_head('new_branch')
- repo.head.reference = new_branch
-
-Understanding Objects
-*********************
-An Object is anything storable in git's object database. Objects contain information about their type, their uncompressed size as well as the actual data. Each object is uniquely identified by a binary SHA1 hash, being 20 bytes in size.
-
-Git only knows 4 distinct object types being Blobs, Trees, Commits and Tags.
-
-In Git-Python, all objects can be accessed through their common base, compared and hashed. They are usually not instantiated directly, but through references or specialized repository functions::
-
- hc = repo.head.commit
- hct = hc.tree
- hc != hct
- hc != repo.tags[0]
- hc == repo.head.reference.commit
-
-Common fields are::
-
- hct.type
- 'tree'
- hct.size
- 166
- hct.hexsha
- 'a95eeb2a7082212c197cabbf2539185ec74ed0e8'
- hct.binsha
- 'binary 20 byte sha1'
-
-Index Objects are objects that can be put into git's index. These objects are trees, blobs and submodules which additionally know about their path in the filesystem as well as their mode::
-
- hct.path # root tree has no path
- ''
- hct.trees[0].path # the first subdirectory has one though
- 'dir'
- htc.mode # trees have the mode of a linux directory
- 040000
- '%o' % htc.blobs[0].mode # blobs have a specific mode though comparable to a standard linux fs
- 100644
-
-Access blob data (or any object data) directly or using streams::
-
- htc.blobs[0].data_stream.read() # stream object to read data from
- htc.blobs[0].stream_data(open("blob_data", "w")) # write data to given stream
-
-
-The Commit object
-*****************
-
-Commit objects contain information about a specific commit. Obtain commits using references as done in `Examining References`_ or as follows.
-
-Obtain commits at the specified revision::
-
- repo.commit('master')
- repo.commit('v0.1')
- repo.commit('HEAD~10')
-
-Iterate 100 commits::
-
- repo.iter_commits('master', max_count=100)
-
-If you need paging, you can specify a number of commits to skip::
-
- repo.iter_commits('master', max_count=10, skip=20)
-
-The above will return commits 21-30 from the commit list.::
-
- headcommit = repo.head.commit
-
- headcommit.hexsha
- '207c0c4418115df0d30820ab1a9acd2ea4bf4431'
-
- headcommit.parents
- (<git.Commit "a91c45eee0b41bf3cdaad3418ca3850664c4a4b4">,)
-
- headcommit.tree
- <git.Tree "563413aedbeda425d8d9dcbb744247d0c3e8a0ac">
-
- headcommit.author
- <git.Actor "Michael Trier <mtrier@gmail.com>">
-
- headcommit.authored_date # seconds since epoch
- 1256291446
-
- headcommit.committer
- <git.Actor "Michael Trier <mtrier@gmail.com>">
-
- headcommit.committed_date
- 1256291446
-
- headcommit.message
- 'cleaned up a lot of test information. Fixed escaping so it works with
- subprocess.'
-
-Note: date time is represented in a ``seconds since epoch`` format. Conversion to human readable form can be accomplished with the various `time module <http://docs.python.org/library/time.html>`_ methods::
-
- import time
- time.asctime(time.gmtime(headcommit.committed_date))
- 'Wed May 7 05:56:02 2008'
-
- time.strftime("%a, %d %b %Y %H:%M", time.gmtime(headcommit.committed_date))
- 'Wed, 7 May 2008 05:56'
-
-You can traverse a commit's ancestry by chaining calls to ``parents``::
-
- headcommit.parents[0].parents[0].parents[0]
-
-The above corresponds to ``master^^^`` or ``master~3`` in git parlance.
-
-The Tree object
-***************
-
-A tree records pointers to the contents of a directory. Let's say you want the root tree of the latest commit on the master branch::
-
- tree = repo.heads.master.commit.tree
- <git.Tree "a006b5b1a8115185a228b7514cdcd46fed90dc92">
-
- tree.hexsha
- 'a006b5b1a8115185a228b7514cdcd46fed90dc92'
-
-Once you have a tree, you can get the contents::
-
- tree.trees # trees are subdirectories
- [<git.Tree "f7eb5df2e465ab621b1db3f5714850d6732cfed2">]
-
- tree.blobs # blobs are files
- [<git.Blob "a871e79d59cf8488cac4af0c8f990b7a989e2b53">,
- <git.Blob "3594e94c04db171e2767224db355f514b13715c5">,
- <git.Blob "e79b05161e4836e5fbf197aeb52515753e8d6ab6">,
- <git.Blob "94954abda49de8615a048f8d2e64b5de848e27a1">]
-
-Its useful to know that a tree behaves like a list with the ability to query entries by name::
-
- tree[0] == tree['dir'] # access by index and by sub-path
- <git.Tree "f7eb5df2e465ab621b1db3f5714850d6732cfed2">
- for entry in tree: do_something_with(entry)
-
- blob = tree[0][0]
- blob.name
- 'file'
- blob.path
- 'dir/file'
- blob.abspath
- '/Users/mtrier/Development/git-python/dir/file'
- >>>tree['dir/file'].binsha == blob.binsha
-
-There is a convenience method that allows you to get a named sub-object from a tree with a syntax similar to how paths are written in an unix system::
-
- tree/"lib"
- <git.Tree "c1c7214dde86f76bc3e18806ac1f47c38b2b7a30">
- tree/"dir/file" == blob
-
-You can also get a tree directly from the repository if you know its name::
-
- repo.tree()
- <git.Tree "master">
-
- repo.tree("c1c7214dde86f76bc3e18806ac1f47c38b2b7a30")
- <git.Tree "c1c7214dde86f76bc3e18806ac1f47c38b2b7a30">
- repo.tree('0.1.6')
- <git.Tree "6825a94104164d9f0f5632607bebd2a32a3579e5">
-
-As trees only allow direct access to their direct entries, use the traverse method to obtain an iterator to traverse entries recursively::
-
- tree.traverse()
- <generator object at 0x7f6598bd65a8>
- for entry in tree.traverse(): do_something_with(entry)
-
-
-The Index Object
-****************
-The git index is the stage containing changes to be written with the next commit or where merges finally have to take place. You may freely access and manipulate this information using the IndexFile Object::
-
- index = repo.index
-
-Access objects and add/remove entries. Commit the changes::
-
- for stage, blob in index.iter_blobs(): do_something(...)
- # Access blob objects
- for (path, stage), entry in index.entries.iteritems: pass
- # Access the entries directly
- index.add(['my_new_file']) # add a new file to the index
- index.remove(['dir/existing_file'])
- new_commit = index.commit("my commit message")
-
-Create new indices from other trees or as result of a merge. Write that result to a new index file::
-
- tmp_index = Index.from_tree(repo, 'HEAD~1') # load a tree into a temporary index
- merge_index = Index.from_tree(repo, 'base', 'HEAD', 'some_branch') # merge two trees three-way
- merge_index.write("merged_index")
-
-Handling Remotes
-****************
-
-Remotes are used as alias for a foreign repository to ease pushing to and fetching from them::
-
- test_remote = repo.create_remote('test', 'git@server:repo.git')
- repo.delete_remote(test_remote) # create and delete remotes
- origin = repo.remotes.origin # get default remote by name
- origin.refs # local remote references
- o = origin.rename('new_origin') # rename remotes
- o.fetch() # fetch, pull and push from and to the remote
- o.pull()
- o.push()
-
-You can easily access configuration information for a remote by accessing options as if they where attributes::
-
- o.url
- 'git@server:dummy_repo.git'
-
-Change configuration for a specific remote only::
-
- o.config_writer.set("pushurl", "other_url")
-
-Obtaining Diff Information
-**************************
-
-Diffs can generally be obtained by subclasses of ``Diffable`` as they provide the ``diff`` method. This operation yields a DiffIndex allowing you to easily access diff information about paths.
-
-Diffs can be made between the Index and Trees, Index and the working tree, trees and trees as well as trees and the working copy. If commits are involved, their tree will be used implicitly::
-
- hcommit = repo.head.commit
- idiff = hcommit.diff() # diff tree against index
- tdiff = hcommit.diff('HEAD~1') # diff tree against previous tree
- wdiff = hcommit.diff(None) # diff tree against working tree
-
- index = repo.index
- index.diff() # diff index against itself yielding empty diff
- index.diff(None) # diff index against working copy
- index.diff('HEAD') # diff index against current HEAD tree
-
-The item returned is a DiffIndex which is essentially a list of Diff objects. It provides additional filtering to ease finding what you might be looking for::
-
- for diff_added in wdiff.iter_change_type('A'): do_something_with(diff_added)
-
-Switching Branches
-******************
-To switch between branches, you effectively need to point your HEAD to the new branch head and reset your index and working copy to match. A simple manual way to do it is the following one::
-
- repo.head.reference = repo.heads.other_branch
- repo.head.reset(index=True, working_tree=True)
-
-The previous approach would brutally overwrite the user's changes in the working copy and index though and is less sophisticated than a git-checkout for instance which generally prevents you from destroying your work. Use the safer approach as follows::
-
- repo.heads.master.checkout() # checkout the branch using git-checkout
- repo.heads.other_branch.checkout()
-
-Using git directly
-******************
-In case you are missing functionality as it has not been wrapped, you may conveniently use the git command directly. It is owned by each repository instance::
-
- git = repo.git
- git.checkout('head', b="my_new_branch") # default command
- git.for_each_ref() # '-' becomes '_' when calling it
-
-The return value will by default be a string of the standard output channel produced by the command.
-
-Keyword arguments translate to short and long keyword arguments on the commandline.
-The special notion ``git.command(flag=True)`` will create a flag without value like ``command --flag``.
-
-If ``None`` is found in the arguments, it will be dropped silently. Lists and tuples passed as arguments will be unpacked recursively to individual arguments. Objects are converted to strings using the str(...) function.
-
-And even more ...
-*****************
-
-There is more functionality in there, like the ability to archive repositories, get stats and logs, blame, and probably a few other things that were not mentioned here.
-
-Check the unit tests for an in-depth introduction on how each function is supposed to be used.
-
diff --git a/doc/doc_index/0.3.0/_sources/whatsnew.txt b/doc/doc_index/0.3.0/_sources/whatsnew.txt
deleted file mode 100644
index 7a5ef53d..00000000
--- a/doc/doc_index/0.3.0/_sources/whatsnew.txt
+++ /dev/null
@@ -1,59 +0,0 @@
-
-################
-Whats New in 0.3
-################
-GitPython 0.3 is the first step in creating a hybrid which uses a pure python implementations for all simple git features which can be implemented without significant performance penalties. Everything else is still performed using the git command, which is nicely integrated and easy to use.
-
-Its biggest strength, being the support for all git features through the git command itself, is a weakness as well considering the possibly vast amount of times the git command is being started up. Depending on the actual command being performed, the git repository will be initialized on many of these invocations, causing additional overhead for possibly tiny operations.
-
-Keeping as many major operations in the python world will result in improved caching benefits as certain data structures just have to be initialized once and can be reused multiple times. This mode of operation may improve performance when altering the git database on a low level, and is clearly beneficial on operating systems where command invocations are very slow.
-
-****************
-Object Databases
-****************
-An object database provides a simple interface to query object information or to write new object data. Objects are generally identified by their 20 byte binary sha1 value during query.
-
-GitPython uses the ``gitdb`` project to provide a pure-python implementation of the git database, which includes reading and writing loose objects, reading pack files and handling alternate repositories.
-
-The great thing about this is that ``Repo`` objects can use any object database, hence it easily supports different implementations with different performance characteristics. If you are thinking in extremes, you can implement your own database representation, which may be more efficient for what you want to do specifically, like handling big files more efficiently.
-
-************************
-Reduced Memory Footprint
-************************
-Objects, such as commits, tags, trees and blobs now use 20 byte sha1 signatures internally, reducing their memory demands by 20 bytes per object, allowing you to keep more objects in memory at the same time.
-
-The internal caches of tree objects were improved to use less memory as well.
-
-##################
-Upgrading from 0.2
-##################
-GitPython 0.2 essentially behaves like GitPython 0.3 with a Repository using the ``GitCmdObjectDB`` instead of the ``GitDB`` as object database backend. Additionally it can be used more conveniently through implicit conversions and provides a feature set strikingly similar to 0.3.
-
-**************************
-Why you should not upgrade
-**************************
-GitPython 0.3 in most cases will not run faster than GitPython 0.2, the opposite might be the case at it uses the pure python implementation by default.
-There have been a few renames which will need additional adjustments in your code.
-
-Generally, if you only read git repositories, version 0.2 is sufficient and very well performing.
-
-**********************
-Why you should upgrade
-**********************
-GitPython 0.2 has reached its end of line, and it is unlikely to receive more than contributed patches. 0.3 is the main development branch which will lead into the future.
-
-GitPython 0.3 provides memory usage optimization and is very flexible in the way it uses to access the object database. With minimal effort, 0.3 will be running as fast as 0.2. It marks the first step of more versions to come, and will improve over time.
-
-GitPython 0.3 is especially suitable for everyone who needs not only read, but also write access to a git repository. It is optimized to keep the memory consumption as low as possible, especially when handling large data sets. GitPython 0.3 operates on streams, not on possibly huge chunks of data.
-
-
-**************
-Guided Upgrade
-**************
-This guide should help to make the upgrade as painless as possible, hence it points out where to start, and what to look out for.
-
-* Have a look at the CHANGES log file and read all important changes about 0.3 for an overview.
-* Start applying the renames, generally the ``utils`` modules are now called ``util``, ``errors`` is called ``exc``.
-* Search for occurrences of the ``sha`` property of object instances. A similar value can be obtained through the new ``hexsha`` property. The native sha1 value is the ``binsha`` though.
-* Search for code which instantiates objects directly. Their initializer now requires a 20 byte binary Sha1, rev-specs cannot be used anymore. For a similar effect, either convert your hexadecimal shas to binary shas beforehand ( ``binascii.unhexlify`` for instance ), or use higher level functions such as ``Object.new``, ``Repo.commit`` or ``Repo.tree``. The latter ones takes rev-specs and hexadecimal sha1 hashes.
-
diff --git a/doc/doc_index/0.3.0/_static/basic.css b/doc/doc_index/0.3.0/_static/basic.css
deleted file mode 100644
index a04d6545..00000000
--- a/doc/doc_index/0.3.0/_static/basic.css
+++ /dev/null
@@ -1,417 +0,0 @@
-/**
- * Sphinx stylesheet -- basic theme
- * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- */
-
-/* -- main layout ----------------------------------------------------------- */
-
-div.clearer {
- clear: both;
-}
-
-/* -- relbar ---------------------------------------------------------------- */
-
-div.related {
- width: 100%;
- font-size: 90%;
-}
-
-div.related h3 {
- display: none;
-}
-
-div.related ul {
- margin: 0;
- padding: 0 0 0 10px;
- list-style: none;
-}
-
-div.related li {
- display: inline;
-}
-
-div.related li.right {
- float: right;
- margin-right: 5px;
-}
-
-/* -- sidebar --------------------------------------------------------------- */
-
-div.sphinxsidebarwrapper {
- padding: 10px 5px 0 10px;
-}
-
-div.sphinxsidebar {
- float: left;
- width: 230px;
- margin-left: -100%;
- font-size: 90%;
-}
-
-div.sphinxsidebar ul {
- list-style: none;
-}
-
-div.sphinxsidebar ul ul,
-div.sphinxsidebar ul.want-points {
- margin-left: 20px;
- list-style: square;
-}
-
-div.sphinxsidebar ul ul {
- margin-top: 0;
- margin-bottom: 0;
-}
-
-div.sphinxsidebar form {
- margin-top: 10px;
-}
-
-div.sphinxsidebar input {
- border: 1px solid #98dbcc;
- font-family: sans-serif;
- font-size: 1em;
-}
-
-img {
- border: 0;
-}
-
-/* -- search page ----------------------------------------------------------- */
-
-ul.search {
- margin: 10px 0 0 20px;
- padding: 0;
-}
-
-ul.search li {
- padding: 5px 0 5px 20px;
- background-image: url(file.png);
- background-repeat: no-repeat;
- background-position: 0 7px;
-}
-
-ul.search li a {
- font-weight: bold;
-}
-
-ul.search li div.context {
- color: #888;
- margin: 2px 0 0 30px;
- text-align: left;
-}
-
-ul.keywordmatches li.goodmatch a {
- font-weight: bold;
-}
-
-/* -- index page ------------------------------------------------------------ */
-
-table.contentstable {
- width: 90%;
-}
-
-table.contentstable p.biglink {
- line-height: 150%;
-}
-
-a.biglink {
- font-size: 1.3em;
-}
-
-span.linkdescr {
- font-style: italic;
- padding-top: 5px;
- font-size: 90%;
-}
-
-/* -- general index --------------------------------------------------------- */
-
-table.indextable td {
- text-align: left;
- vertical-align: top;
-}
-
-table.indextable dl, table.indextable dd {
- margin-top: 0;
- margin-bottom: 0;
-}
-
-table.indextable tr.pcap {
- height: 10px;
-}
-
-table.indextable tr.cap {
- margin-top: 10px;
- background-color: #f2f2f2;
-}
-
-img.toggler {
- margin-right: 3px;
- margin-top: 3px;
- cursor: pointer;
-}
-
-/* -- general body styles --------------------------------------------------- */
-
-a.headerlink {
- visibility: hidden;
-}
-
-h1:hover > a.headerlink,
-h2:hover > a.headerlink,
-h3:hover > a.headerlink,
-h4:hover > a.headerlink,
-h5:hover > a.headerlink,
-h6:hover > a.headerlink,
-dt:hover > a.headerlink {
- visibility: visible;
-}
-
-div.body p.caption {
- text-align: inherit;
-}
-
-div.body td {
- text-align: left;
-}
-
-.field-list ul {
- padding-left: 1em;
-}
-
-.first {
- margin-top: 0 !important;
-}
-
-p.rubric {
- margin-top: 30px;
- font-weight: bold;
-}
-
-/* -- sidebars -------------------------------------------------------------- */
-
-div.sidebar {
- margin: 0 0 0.5em 1em;
- border: 1px solid #ddb;
- padding: 7px 7px 0 7px;
- background-color: #ffe;
- width: 40%;
- float: right;
-}
-
-p.sidebar-title {
- font-weight: bold;
-}
-
-/* -- topics ---------------------------------------------------------------- */
-
-div.topic {
- border: 1px solid #ccc;
- padding: 7px 7px 0 7px;
- margin: 10px 0 10px 0;
-}
-
-p.topic-title {
- font-size: 1.1em;
- font-weight: bold;
- margin-top: 10px;
-}
-
-/* -- admonitions ----------------------------------------------------------- */
-
-div.admonition {
- margin-top: 10px;
- margin-bottom: 10px;
- padding: 7px;
-}
-
-div.admonition dt {
- font-weight: bold;
-}
-
-div.admonition dl {
- margin-bottom: 0;
-}
-
-p.admonition-title {
- margin: 0px 10px 5px 0px;
- font-weight: bold;
-}
-
-div.body p.centered {
- text-align: center;
- margin-top: 25px;
-}
-
-/* -- tables ---------------------------------------------------------------- */
-
-table.docutils {
- border: 0;
- border-collapse: collapse;
-}
-
-table.docutils td, table.docutils th {
- padding: 1px 8px 1px 0;
- border-top: 0;
- border-left: 0;
- border-right: 0;
- border-bottom: 1px solid #aaa;
-}
-
-table.field-list td, table.field-list th {
- border: 0 !important;
-}
-
-table.footnote td, table.footnote th {
- border: 0 !important;
-}
-
-th {
- text-align: left;
- padding-right: 5px;
-}
-
-/* -- other body styles ----------------------------------------------------- */
-
-dl {
- margin-bottom: 15px;
-}
-
-dd p {
- margin-top: 0px;
-}
-
-dd ul, dd table {
- margin-bottom: 10px;
-}
-
-dd {
- margin-top: 3px;
- margin-bottom: 10px;
- margin-left: 30px;
-}
-
-dt:target, .highlight {
- background-color: #fbe54e;
-}
-
-dl.glossary dt {
- font-weight: bold;
- font-size: 1.1em;
-}
-
-.field-list ul {
- margin: 0;
- padding-left: 1em;
-}
-
-.field-list p {
- margin: 0;
-}
-
-.refcount {
- color: #060;
-}
-
-.optional {
- font-size: 1.3em;
-}
-
-.versionmodified {
- font-style: italic;
-}
-
-.system-message {
- background-color: #fda;
- padding: 5px;
- border: 3px solid red;
-}
-
-.footnote:target {
- background-color: #ffa
-}
-
-.line-block {
- display: block;
- margin-top: 1em;
- margin-bottom: 1em;
-}
-
-.line-block .line-block {
- margin-top: 0;
- margin-bottom: 0;
- margin-left: 1.5em;
-}
-
-/* -- code displays --------------------------------------------------------- */
-
-pre {
- overflow: auto;
-}
-
-td.linenos pre {
- padding: 5px 0px;
- border: 0;
- background-color: transparent;
- color: #aaa;
-}
-
-table.highlighttable {
- margin-left: 0.5em;
-}
-
-table.highlighttable td {
- padding: 0 0.5em 0 0.5em;
-}
-
-tt.descname {
- background-color: transparent;
- font-weight: bold;
- font-size: 1.2em;
-}
-
-tt.descclassname {
- background-color: transparent;
-}
-
-tt.xref, a tt {
- background-color: transparent;
- font-weight: bold;
-}
-
-h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
- background-color: transparent;
-}
-
-/* -- math display ---------------------------------------------------------- */
-
-img.math {
- vertical-align: middle;
-}
-
-div.body div.math p {
- text-align: center;
-}
-
-span.eqno {
- float: right;
-}
-
-/* -- printout stylesheet --------------------------------------------------- */
-
-@media print {
- div.document,
- div.documentwrapper,
- div.bodywrapper {
- margin: 0 !important;
- width: 100%;
- }
-
- div.sphinxsidebar,
- div.related,
- div.footer,
- #top-link {
- display: none;
- }
-}
diff --git a/doc/doc_index/0.3.0/_static/default.css b/doc/doc_index/0.3.0/_static/default.css
deleted file mode 100644
index e8e75cf5..00000000
--- a/doc/doc_index/0.3.0/_static/default.css
+++ /dev/null
@@ -1,247 +0,0 @@
-/**
- * Sphinx stylesheet -- default theme
- * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- */
-
-@import url("basic.css");
-
-/* -- page layout ----------------------------------------------------------- */
-
-body {
- font-family: sans-serif;
- font-size: 100%;
- background-color: #11303d;
- color: #000;
- margin: 0;
- padding: 0;
-}
-
-div.document {
- background-color: #1c4e63;
-}
-
-div.documentwrapper {
- float: left;
- width: 100%;
-}
-
-div.bodywrapper {
- margin: 0 0 0 230px;
-}
-
-div.body {
- background-color: #ffffff;
- color: #000000;
- padding: 0 20px 30px 20px;
-}
-
-div.footer {
- color: #ffffff;
- width: 100%;
- padding: 9px 0 9px 0;
- text-align: center;
- font-size: 75%;
-}
-
-div.footer a {
- color: #ffffff;
- text-decoration: underline;
-}
-
-div.related {
- background-color: #133f52;
- line-height: 30px;
- color: #ffffff;
-}
-
-div.related a {
- color: #ffffff;
-}
-
-div.sphinxsidebar {
- top: 30px;
- bottom: 0;
- margin: 0;
- position: fixed;
- overflow: auto;
- height: auto;
-}
-/* this is nice, but it it leads to hidden headings when jumping
- to an anchor */
-/*
-div.related {
- position: fixed;
-}
-
-div.documentwrapper {
- margin-top: 30px;
-}
-*/
-
-div.sphinxsidebar h3 {
- font-family: 'Trebuchet MS', sans-serif;
- color: #ffffff;
- font-size: 1.4em;
- font-weight: normal;
- margin: 0;
- padding: 0;
-}
-
-div.sphinxsidebar h3 a {
- color: #ffffff;
-}
-
-div.sphinxsidebar h4 {
- font-family: 'Trebuchet MS', sans-serif;
- color: #ffffff;
- font-size: 1.3em;
- font-weight: normal;
- margin: 5px 0 0 0;
- padding: 0;
-}
-
-div.sphinxsidebar p {
- color: #ffffff;
-}
-
-div.sphinxsidebar p.topless {
- margin: 5px 10px 10px 10px;
-}
-
-div.sphinxsidebar ul {
- margin: 10px;
- padding: 0;
- color: #ffffff;
-}
-
-div.sphinxsidebar a {
- color: #98dbcc;
-}
-
-div.sphinxsidebar input {
- border: 1px solid #98dbcc;
- font-family: sans-serif;
- font-size: 1em;
-}
-
-/* -- body styles ----------------------------------------------------------- */
-
-a {
- color: #355f7c;
- text-decoration: none;
-}
-
-a:hover {
- text-decoration: underline;
-}
-
-div.body p, div.body dd, div.body li {
- text-align: justify;
- line-height: 130%;
-}
-
-div.body h1,
-div.body h2,
-div.body h3,
-div.body h4,
-div.body h5,
-div.body h6 {
- font-family: 'Trebuchet MS', sans-serif;
- background-color: #f2f2f2;
- font-weight: normal;
- color: #20435c;
- border-bottom: 1px solid #ccc;
- margin: 20px -20px 10px -20px;
- padding: 3px 0 3px 10px;
-}
-
-div.body h1 { margin-top: 0; font-size: 200%; }
-div.body h2 { font-size: 160%; }
-div.body h3 { font-size: 140%; }
-div.body h4 { font-size: 120%; }
-div.body h5 { font-size: 110%; }
-div.body h6 { font-size: 100%; }
-
-a.headerlink {
- color: #c60f0f;
- font-size: 0.8em;
- padding: 0 4px 0 4px;
- text-decoration: none;
-}
-
-a.headerlink:hover {
- background-color: #c60f0f;
- color: white;
-}
-
-div.body p, div.body dd, div.body li {
- text-align: justify;
- line-height: 130%;
-}
-
-div.admonition p.admonition-title + p {
- display: inline;
-}
-
-div.admonition p {
- margin-bottom: 5px;
-}
-
-div.admonition pre {
- margin-bottom: 5px;
-}
-
-div.admonition ul, div.admonition ol {
- margin-bottom: 5px;
-}
-
-div.note {
- background-color: #eee;
- border: 1px solid #ccc;
-}
-
-div.seealso {
- background-color: #ffc;
- border: 1px solid #ff6;
-}
-
-div.topic {
- background-color: #eee;
-}
-
-div.warning {
- background-color: #ffe4e4;
- border: 1px solid #f66;
-}
-
-p.admonition-title {
- display: inline;
-}
-
-p.admonition-title:after {
- content: ":";
-}
-
-pre {
- padding: 5px;
- background-color: #eeffcc;
- color: #333333;
- line-height: 120%;
- border: 1px solid #ac9;
- border-left: none;
- border-right: none;
-}
-
-tt {
- background-color: #ecf0f3;
- padding: 0 1px 0 1px;
- font-size: 0.95em;
-}
-
-.warning tt {
- background: #efc2c2;
-}
-
-.note tt {
- background: #d6d6d6;
-} \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/_static/doctools.js b/doc/doc_index/0.3.0/_static/doctools.js
deleted file mode 100644
index 9447678c..00000000
--- a/doc/doc_index/0.3.0/_static/doctools.js
+++ /dev/null
@@ -1,232 +0,0 @@
-/// XXX: make it cross browser
-
-/**
- * make the code below compatible with browsers without
- * an installed firebug like debugger
- */
-if (!window.console || !console.firebug) {
- var names = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
- "group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"];
- window.console = {};
- for (var i = 0; i < names.length; ++i)
- window.console[names[i]] = function() {}
-}
-
-/**
- * small helper function to urldecode strings
- */
-jQuery.urldecode = function(x) {
- return decodeURIComponent(x).replace(/\+/g, ' ');
-}
-
-/**
- * small helper function to urlencode strings
- */
-jQuery.urlencode = encodeURIComponent;
-
-/**
- * This function returns the parsed url parameters of the
- * current request. Multiple values per key are supported,
- * it will always return arrays of strings for the value parts.
- */
-jQuery.getQueryParameters = function(s) {
- if (typeof s == 'undefined')
- s = document.location.search;
- var parts = s.substr(s.indexOf('?') + 1).split('&');
- var result = {};
- for (var i = 0; i < parts.length; i++) {
- var tmp = parts[i].split('=', 2);
- var key = jQuery.urldecode(tmp[0]);
- var value = jQuery.urldecode(tmp[1]);
- if (key in result)
- result[key].push(value);
- else
- result[key] = [value];
- }
- return result;
-}
-
-/**
- * small function to check if an array contains
- * a given item.
- */
-jQuery.contains = function(arr, item) {
- for (var i = 0; i < arr.length; i++) {
- if (arr[i] == item)
- return true;
- }
- return false;
-}
-
-/**
- * highlight a given string on a jquery object by wrapping it in
- * span elements with the given class name.
- */
-jQuery.fn.highlightText = function(text, className) {
- function highlight(node) {
- if (node.nodeType == 3) {
- var val = node.nodeValue;
- var pos = val.toLowerCase().indexOf(text);
- if (pos >= 0 && !jQuery.className.has(node.parentNode, className)) {
- var span = document.createElement("span");
- span.className = className;
- span.appendChild(document.createTextNode(val.substr(pos, text.length)));
- node.parentNode.insertBefore(span, node.parentNode.insertBefore(
- document.createTextNode(val.substr(pos + text.length)),
- node.nextSibling));
- node.nodeValue = val.substr(0, pos);
- }
- }
- else if (!jQuery(node).is("button, select, textarea")) {
- jQuery.each(node.childNodes, function() {
- highlight(this)
- });
- }
- }
- return this.each(function() {
- highlight(this);
- });
-}
-
-/**
- * Small JavaScript module for the documentation.
- */
-var Documentation = {
-
- init : function() {
- this.fixFirefoxAnchorBug();
- this.highlightSearchWords();
- this.initModIndex();
- },
-
- /**
- * i18n support
- */
- TRANSLATIONS : {},
- PLURAL_EXPR : function(n) { return n == 1 ? 0 : 1; },
- LOCALE : 'unknown',
-
- // gettext and ngettext don't access this so that the functions
- // can savely bound to a different name (_ = Documentation.gettext)
- gettext : function(string) {
- var translated = Documentation.TRANSLATIONS[string];
- if (typeof translated == 'undefined')
- return string;
- return (typeof translated == 'string') ? translated : translated[0];
- },
-
- ngettext : function(singular, plural, n) {
- var translated = Documentation.TRANSLATIONS[singular];
- if (typeof translated == 'undefined')
- return (n == 1) ? singular : plural;
- return translated[Documentation.PLURALEXPR(n)];
- },
-
- addTranslations : function(catalog) {
- for (var key in catalog.messages)
- this.TRANSLATIONS[key] = catalog.messages[key];
- this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')');
- this.LOCALE = catalog.locale;
- },
-
- /**
- * add context elements like header anchor links
- */
- addContextElements : function() {
- $('div[id] > :header:first').each(function() {
- $('<a class="headerlink">\u00B6</a>').
- attr('href', '#' + this.id).
- attr('title', _('Permalink to this headline')).
- appendTo(this);
- });
- $('dt[id]').each(function() {
- $('<a class="headerlink">\u00B6</a>').
- attr('href', '#' + this.id).
- attr('title', _('Permalink to this definition')).
- appendTo(this);
- });
- },
-
- /**
- * workaround a firefox stupidity
- */
- fixFirefoxAnchorBug : function() {
- if (document.location.hash && $.browser.mozilla)
- window.setTimeout(function() {
- document.location.href += '';
- }, 10);
- },
-
- /**
- * highlight the search words provided in the url in the text
- */
- highlightSearchWords : function() {
- var params = $.getQueryParameters();
- var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : [];
- if (terms.length) {
- var body = $('div.body');
- window.setTimeout(function() {
- $.each(terms, function() {
- body.highlightText(this.toLowerCase(), 'highlight');
- });
- }, 10);
- $('<li class="highlight-link"><a href="javascript:Documentation.' +
- 'hideSearchWords()">' + _('Hide Search Matches') + '</a></li>')
- .appendTo($('.sidebar .this-page-menu'));
- }
- },
-
- /**
- * init the modindex toggle buttons
- */
- initModIndex : function() {
- var togglers = $('img.toggler').click(function() {
- var src = $(this).attr('src');
- var idnum = $(this).attr('id').substr(7);
- console.log($('tr.cg-' + idnum).toggle());
- if (src.substr(-9) == 'minus.png')
- $(this).attr('src', src.substr(0, src.length-9) + 'plus.png');
- else
- $(this).attr('src', src.substr(0, src.length-8) + 'minus.png');
- }).css('display', '');
- if (DOCUMENTATION_OPTIONS.COLLAPSE_MODINDEX) {
- togglers.click();
- }
- },
-
- /**
- * helper function to hide the search marks again
- */
- hideSearchWords : function() {
- $('.sidebar .this-page-menu li.highlight-link').fadeOut(300);
- $('span.highlight').removeClass('highlight');
- },
-
- /**
- * make the url absolute
- */
- makeURL : function(relativeURL) {
- return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL;
- },
-
- /**
- * get the current relative url
- */
- getCurrentURL : function() {
- var path = document.location.pathname;
- var parts = path.split(/\//);
- $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() {
- if (this == '..')
- parts.pop();
- });
- var url = parts.join('/');
- return path.substring(url.lastIndexOf('/') + 1, path.length - 1);
- }
-};
-
-// quick alias for translations
-_ = Documentation.gettext;
-
-$(document).ready(function() {
- Documentation.init();
-});
diff --git a/doc/doc_index/0.3.0/_static/file.png b/doc/doc_index/0.3.0/_static/file.png
deleted file mode 100644
index d18082e3..00000000
--- a/doc/doc_index/0.3.0/_static/file.png
+++ /dev/null
Binary files differ
diff --git a/doc/doc_index/0.3.0/_static/jquery.js b/doc/doc_index/0.3.0/_static/jquery.js
deleted file mode 100644
index 82b98e1d..00000000
--- a/doc/doc_index/0.3.0/_static/jquery.js
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * jQuery 1.2.6 - New Wave Javascript
- *
- * Copyright (c) 2008 John Resig (jquery.com)
- * Dual licensed under the MIT (MIT-LICENSE.txt)
- * and GPL (GPL-LICENSE.txt) licenses.
- *
- * $Date: 2008-05-24 14:22:17 -0400 (Sat, 24 May 2008) $
- * $Rev: 5685 $
- */
-(function(){var _jQuery=window.jQuery,_$=window.$;var jQuery=window.jQuery=window.$=function(selector,context){return new jQuery.fn.init(selector,context);};var quickExpr=/^[^<]*(<(.|\s)+>)[^>]*$|^#(\w+)$/,isSimple=/^.[^:#\[\.]*$/,undefined;jQuery.fn=jQuery.prototype={init:function(selector,context){selector=selector||document;if(selector.nodeType){this[0]=selector;this.length=1;return this;}if(typeof selector=="string"){var match=quickExpr.exec(selector);if(match&&(match[1]||!context)){if(match[1])selector=jQuery.clean([match[1]],context);else{var elem=document.getElementById(match[3]);if(elem){if(elem.id!=match[3])return jQuery().find(selector);return jQuery(elem);}selector=[];}}else
-return jQuery(context).find(selector);}else if(jQuery.isFunction(selector))return jQuery(document)[jQuery.fn.ready?"ready":"load"](selector);return this.setArray(jQuery.makeArray(selector));},jquery:"1.2.6",size:function(){return this.length;},length:0,get:function(num){return num==undefined?jQuery.makeArray(this):this[num];},pushStack:function(elems){var ret=jQuery(elems);ret.prevObject=this;return ret;},setArray:function(elems){this.length=0;Array.prototype.push.apply(this,elems);return this;},each:function(callback,args){return jQuery.each(this,callback,args);},index:function(elem){var ret=-1;return jQuery.inArray(elem&&elem.jquery?elem[0]:elem,this);},attr:function(name,value,type){var options=name;if(name.constructor==String)if(value===undefined)return this[0]&&jQuery[type||"attr"](this[0],name);else{options={};options[name]=value;}return this.each(function(i){for(name in options)jQuery.attr(type?this.style:this,name,jQuery.prop(this,options[name],type,i,name));});},css:function(key,value){if((key=='width'||key=='height')&&parseFloat(value)<0)value=undefined;return this.attr(key,value,"curCSS");},text:function(text){if(typeof text!="object"&&text!=null)return this.empty().append((this[0]&&this[0].ownerDocument||document).createTextNode(text));var ret="";jQuery.each(text||this,function(){jQuery.each(this.childNodes,function(){if(this.nodeType!=8)ret+=this.nodeType!=1?this.nodeValue:jQuery.fn.text([this]);});});return ret;},wrapAll:function(html){if(this[0])jQuery(html,this[0].ownerDocument).clone().insertBefore(this[0]).map(function(){var elem=this;while(elem.firstChild)elem=elem.firstChild;return elem;}).append(this);return this;},wrapInner:function(html){return this.each(function(){jQuery(this).contents().wrapAll(html);});},wrap:function(html){return this.each(function(){jQuery(this).wrapAll(html);});},append:function(){return this.domManip(arguments,true,false,function(elem){if(this.nodeType==1)this.appendChild(elem);});},prepend:function(){return this.domManip(arguments,true,true,function(elem){if(this.nodeType==1)this.insertBefore(elem,this.firstChild);});},before:function(){return this.domManip(arguments,false,false,function(elem){this.parentNode.insertBefore(elem,this);});},after:function(){return this.domManip(arguments,false,true,function(elem){this.parentNode.insertBefore(elem,this.nextSibling);});},end:function(){return this.prevObject||jQuery([]);},find:function(selector){var elems=jQuery.map(this,function(elem){return jQuery.find(selector,elem);});return this.pushStack(/[^+>] [^+>]/.test(selector)||selector.indexOf("..")>-1?jQuery.unique(elems):elems);},clone:function(events){var ret=this.map(function(){if(jQuery.browser.msie&&!jQuery.isXMLDoc(this)){var clone=this.cloneNode(true),container=document.createElement("div");container.appendChild(clone);return jQuery.clean([container.innerHTML])[0];}else
-return this.cloneNode(true);});var clone=ret.find("*").andSelf().each(function(){if(this[expando]!=undefined)this[expando]=null;});if(events===true)this.find("*").andSelf().each(function(i){if(this.nodeType==3)return;var events=jQuery.data(this,"events");for(var type in events)for(var handler in events[type])jQuery.event.add(clone[i],type,events[type][handler],events[type][handler].data);});return ret;},filter:function(selector){return this.pushStack(jQuery.isFunction(selector)&&jQuery.grep(this,function(elem,i){return selector.call(elem,i);})||jQuery.multiFilter(selector,this));},not:function(selector){if(selector.constructor==String)if(isSimple.test(selector))return this.pushStack(jQuery.multiFilter(selector,this,true));else
-selector=jQuery.multiFilter(selector,this);var isArrayLike=selector.length&&selector[selector.length-1]!==undefined&&!selector.nodeType;return this.filter(function(){return isArrayLike?jQuery.inArray(this,selector)<0:this!=selector;});},add:function(selector){return this.pushStack(jQuery.unique(jQuery.merge(this.get(),typeof selector=='string'?jQuery(selector):jQuery.makeArray(selector))));},is:function(selector){return!!selector&&jQuery.multiFilter(selector,this).length>0;},hasClass:function(selector){return this.is("."+selector);},val:function(value){if(value==undefined){if(this.length){var elem=this[0];if(jQuery.nodeName(elem,"select")){var index=elem.selectedIndex,values=[],options=elem.options,one=elem.type=="select-one";if(index<0)return null;for(var i=one?index:0,max=one?index+1:options.length;i<max;i++){var option=options[i];if(option.selected){value=jQuery.browser.msie&&!option.attributes.value.specified?option.text:option.value;if(one)return value;values.push(value);}}return values;}else
-return(this[0].value||"").replace(/\r/g,"");}return undefined;}if(value.constructor==Number)value+='';return this.each(function(){if(this.nodeType!=1)return;if(value.constructor==Array&&/radio|checkbox/.test(this.type))this.checked=(jQuery.inArray(this.value,value)>=0||jQuery.inArray(this.name,value)>=0);else if(jQuery.nodeName(this,"select")){var values=jQuery.makeArray(value);jQuery("option",this).each(function(){this.selected=(jQuery.inArray(this.value,values)>=0||jQuery.inArray(this.text,values)>=0);});if(!values.length)this.selectedIndex=-1;}else
-this.value=value;});},html:function(value){return value==undefined?(this[0]?this[0].innerHTML:null):this.empty().append(value);},replaceWith:function(value){return this.after(value).remove();},eq:function(i){return this.slice(i,i+1);},slice:function(){return this.pushStack(Array.prototype.slice.apply(this,arguments));},map:function(callback){return this.pushStack(jQuery.map(this,function(elem,i){return callback.call(elem,i,elem);}));},andSelf:function(){return this.add(this.prevObject);},data:function(key,value){var parts=key.split(".");parts[1]=parts[1]?"."+parts[1]:"";if(value===undefined){var data=this.triggerHandler("getData"+parts[1]+"!",[parts[0]]);if(data===undefined&&this.length)data=jQuery.data(this[0],key);return data===undefined&&parts[1]?this.data(parts[0]):data;}else
-return this.trigger("setData"+parts[1]+"!",[parts[0],value]).each(function(){jQuery.data(this,key,value);});},removeData:function(key){return this.each(function(){jQuery.removeData(this,key);});},domManip:function(args,table,reverse,callback){var clone=this.length>1,elems;return this.each(function(){if(!elems){elems=jQuery.clean(args,this.ownerDocument);if(reverse)elems.reverse();}var obj=this;if(table&&jQuery.nodeName(this,"table")&&jQuery.nodeName(elems[0],"tr"))obj=this.getElementsByTagName("tbody")[0]||this.appendChild(this.ownerDocument.createElement("tbody"));var scripts=jQuery([]);jQuery.each(elems,function(){var elem=clone?jQuery(this).clone(true)[0]:this;if(jQuery.nodeName(elem,"script"))scripts=scripts.add(elem);else{if(elem.nodeType==1)scripts=scripts.add(jQuery("script",elem).remove());callback.call(obj,elem);}});scripts.each(evalScript);});}};jQuery.fn.init.prototype=jQuery.fn;function evalScript(i,elem){if(elem.src)jQuery.ajax({url:elem.src,async:false,dataType:"script"});else
-jQuery.globalEval(elem.text||elem.textContent||elem.innerHTML||"");if(elem.parentNode)elem.parentNode.removeChild(elem);}function now(){return+new Date;}jQuery.extend=jQuery.fn.extend=function(){var target=arguments[0]||{},i=1,length=arguments.length,deep=false,options;if(target.constructor==Boolean){deep=target;target=arguments[1]||{};i=2;}if(typeof target!="object"&&typeof target!="function")target={};if(length==i){target=this;--i;}for(;i<length;i++)if((options=arguments[i])!=null)for(var name in options){var src=target[name],copy=options[name];if(target===copy)continue;if(deep&&copy&&typeof copy=="object"&&!copy.nodeType)target[name]=jQuery.extend(deep,src||(copy.length!=null?[]:{}),copy);else if(copy!==undefined)target[name]=copy;}return target;};var expando="jQuery"+now(),uuid=0,windowData={},exclude=/z-?index|font-?weight|opacity|zoom|line-?height/i,defaultView=document.defaultView||{};jQuery.extend({noConflict:function(deep){window.$=_$;if(deep)window.jQuery=_jQuery;return jQuery;},isFunction:function(fn){return!!fn&&typeof fn!="string"&&!fn.nodeName&&fn.constructor!=Array&&/^[\s[]?function/.test(fn+"");},isXMLDoc:function(elem){return elem.documentElement&&!elem.body||elem.tagName&&elem.ownerDocument&&!elem.ownerDocument.body;},globalEval:function(data){data=jQuery.trim(data);if(data){var head=document.getElementsByTagName("head")[0]||document.documentElement,script=document.createElement("script");script.type="text/javascript";if(jQuery.browser.msie)script.text=data;else
-script.appendChild(document.createTextNode(data));head.insertBefore(script,head.firstChild);head.removeChild(script);}},nodeName:function(elem,name){return elem.nodeName&&elem.nodeName.toUpperCase()==name.toUpperCase();},cache:{},data:function(elem,name,data){elem=elem==window?windowData:elem;var id=elem[expando];if(!id)id=elem[expando]=++uuid;if(name&&!jQuery.cache[id])jQuery.cache[id]={};if(data!==undefined)jQuery.cache[id][name]=data;return name?jQuery.cache[id][name]:id;},removeData:function(elem,name){elem=elem==window?windowData:elem;var id=elem[expando];if(name){if(jQuery.cache[id]){delete jQuery.cache[id][name];name="";for(name in jQuery.cache[id])break;if(!name)jQuery.removeData(elem);}}else{try{delete elem[expando];}catch(e){if(elem.removeAttribute)elem.removeAttribute(expando);}delete jQuery.cache[id];}},each:function(object,callback,args){var name,i=0,length=object.length;if(args){if(length==undefined){for(name in object)if(callback.apply(object[name],args)===false)break;}else
-for(;i<length;)if(callback.apply(object[i++],args)===false)break;}else{if(length==undefined){for(name in object)if(callback.call(object[name],name,object[name])===false)break;}else
-for(var value=object[0];i<length&&callback.call(value,i,value)!==false;value=object[++i]){}}return object;},prop:function(elem,value,type,i,name){if(jQuery.isFunction(value))value=value.call(elem,i);return value&&value.constructor==Number&&type=="curCSS"&&!exclude.test(name)?value+"px":value;},className:{add:function(elem,classNames){jQuery.each((classNames||"").split(/\s+/),function(i,className){if(elem.nodeType==1&&!jQuery.className.has(elem.className,className))elem.className+=(elem.className?" ":"")+className;});},remove:function(elem,classNames){if(elem.nodeType==1)elem.className=classNames!=undefined?jQuery.grep(elem.className.split(/\s+/),function(className){return!jQuery.className.has(classNames,className);}).join(" "):"";},has:function(elem,className){return jQuery.inArray(className,(elem.className||elem).toString().split(/\s+/))>-1;}},swap:function(elem,options,callback){var old={};for(var name in options){old[name]=elem.style[name];elem.style[name]=options[name];}callback.call(elem);for(var name in options)elem.style[name]=old[name];},css:function(elem,name,force){if(name=="width"||name=="height"){var val,props={position:"absolute",visibility:"hidden",display:"block"},which=name=="width"?["Left","Right"]:["Top","Bottom"];function getWH(){val=name=="width"?elem.offsetWidth:elem.offsetHeight;var padding=0,border=0;jQuery.each(which,function(){padding+=parseFloat(jQuery.curCSS(elem,"padding"+this,true))||0;border+=parseFloat(jQuery.curCSS(elem,"border"+this+"Width",true))||0;});val-=Math.round(padding+border);}if(jQuery(elem).is(":visible"))getWH();else
-jQuery.swap(elem,props,getWH);return Math.max(0,val);}return jQuery.curCSS(elem,name,force);},curCSS:function(elem,name,force){var ret,style=elem.style;function color(elem){if(!jQuery.browser.safari)return false;var ret=defaultView.getComputedStyle(elem,null);return!ret||ret.getPropertyValue("color")=="";}if(name=="opacity"&&jQuery.browser.msie){ret=jQuery.attr(style,"opacity");return ret==""?"1":ret;}if(jQuery.browser.opera&&name=="display"){var save=style.outline;style.outline="0 solid black";style.outline=save;}if(name.match(/float/i))name=styleFloat;if(!force&&style&&style[name])ret=style[name];else if(defaultView.getComputedStyle){if(name.match(/float/i))name="float";name=name.replace(/([A-Z])/g,"-$1").toLowerCase();var computedStyle=defaultView.getComputedStyle(elem,null);if(computedStyle&&!color(elem))ret=computedStyle.getPropertyValue(name);else{var swap=[],stack=[],a=elem,i=0;for(;a&&color(a);a=a.parentNode)stack.unshift(a);for(;i<stack.length;i++)if(color(stack[i])){swap[i]=stack[i].style.display;stack[i].style.display="block";}ret=name=="display"&&swap[stack.length-1]!=null?"none":(computedStyle&&computedStyle.getPropertyValue(name))||"";for(i=0;i<swap.length;i++)if(swap[i]!=null)stack[i].style.display=swap[i];}if(name=="opacity"&&ret=="")ret="1";}else if(elem.currentStyle){var camelCase=name.replace(/\-(\w)/g,function(all,letter){return letter.toUpperCase();});ret=elem.currentStyle[name]||elem.currentStyle[camelCase];if(!/^\d+(px)?$/i.test(ret)&&/^\d/.test(ret)){var left=style.left,rsLeft=elem.runtimeStyle.left;elem.runtimeStyle.left=elem.currentStyle.left;style.left=ret||0;ret=style.pixelLeft+"px";style.left=left;elem.runtimeStyle.left=rsLeft;}}return ret;},clean:function(elems,context){var ret=[];context=context||document;if(typeof context.createElement=='undefined')context=context.ownerDocument||context[0]&&context[0].ownerDocument||document;jQuery.each(elems,function(i,elem){if(!elem)return;if(elem.constructor==Number)elem+='';if(typeof elem=="string"){elem=elem.replace(/(<(\w+)[^>]*?)\/>/g,function(all,front,tag){return tag.match(/^(abbr|br|col|img|input|link|meta|param|hr|area|embed)$/i)?all:front+"></"+tag+">";});var tags=jQuery.trim(elem).toLowerCase(),div=context.createElement("div");var wrap=!tags.indexOf("<opt")&&[1,"<select multiple='multiple'>","</select>"]||!tags.indexOf("<leg")&&[1,"<fieldset>","</fieldset>"]||tags.match(/^<(thead|tbody|tfoot|colg|cap)/)&&[1,"<table>","</table>"]||!tags.indexOf("<tr")&&[2,"<table><tbody>","</tbody></table>"]||(!tags.indexOf("<td")||!tags.indexOf("<th"))&&[3,"<table><tbody><tr>","</tr></tbody></table>"]||!tags.indexOf("<col")&&[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"]||jQuery.browser.msie&&[1,"div<div>","</div>"]||[0,"",""];div.innerHTML=wrap[1]+elem+wrap[2];while(wrap[0]--)div=div.lastChild;if(jQuery.browser.msie){var tbody=!tags.indexOf("<table")&&tags.indexOf("<tbody")<0?div.firstChild&&div.firstChild.childNodes:wrap[1]=="<table>"&&tags.indexOf("<tbody")<0?div.childNodes:[];for(var j=tbody.length-1;j>=0;--j)if(jQuery.nodeName(tbody[j],"tbody")&&!tbody[j].childNodes.length)tbody[j].parentNode.removeChild(tbody[j]);if(/^\s/.test(elem))div.insertBefore(context.createTextNode(elem.match(/^\s*/)[0]),div.firstChild);}elem=jQuery.makeArray(div.childNodes);}if(elem.length===0&&(!jQuery.nodeName(elem,"form")&&!jQuery.nodeName(elem,"select")))return;if(elem[0]==undefined||jQuery.nodeName(elem,"form")||elem.options)ret.push(elem);else
-ret=jQuery.merge(ret,elem);});return ret;},attr:function(elem,name,value){if(!elem||elem.nodeType==3||elem.nodeType==8)return undefined;var notxml=!jQuery.isXMLDoc(elem),set=value!==undefined,msie=jQuery.browser.msie;name=notxml&&jQuery.props[name]||name;if(elem.tagName){var special=/href|src|style/.test(name);if(name=="selected"&&jQuery.browser.safari)elem.parentNode.selectedIndex;if(name in elem&&notxml&&!special){if(set){if(name=="type"&&jQuery.nodeName(elem,"input")&&elem.parentNode)throw"type property can't be changed";elem[name]=value;}if(jQuery.nodeName(elem,"form")&&elem.getAttributeNode(name))return elem.getAttributeNode(name).nodeValue;return elem[name];}if(msie&&notxml&&name=="style")return jQuery.attr(elem.style,"cssText",value);if(set)elem.setAttribute(name,""+value);var attr=msie&&notxml&&special?elem.getAttribute(name,2):elem.getAttribute(name);return attr===null?undefined:attr;}if(msie&&name=="opacity"){if(set){elem.zoom=1;elem.filter=(elem.filter||"").replace(/alpha\([^)]*\)/,"")+(parseInt(value)+''=="NaN"?"":"alpha(opacity="+value*100+")");}return elem.filter&&elem.filter.indexOf("opacity=")>=0?(parseFloat(elem.filter.match(/opacity=([^)]*)/)[1])/100)+'':"";}name=name.replace(/-([a-z])/ig,function(all,letter){return letter.toUpperCase();});if(set)elem[name]=value;return elem[name];},trim:function(text){return(text||"").replace(/^\s+|\s+$/g,"");},makeArray:function(array){var ret=[];if(array!=null){var i=array.length;if(i==null||array.split||array.setInterval||array.call)ret[0]=array;else
-while(i)ret[--i]=array[i];}return ret;},inArray:function(elem,array){for(var i=0,length=array.length;i<length;i++)if(array[i]===elem)return i;return-1;},merge:function(first,second){var i=0,elem,pos=first.length;if(jQuery.browser.msie){while(elem=second[i++])if(elem.nodeType!=8)first[pos++]=elem;}else
-while(elem=second[i++])first[pos++]=elem;return first;},unique:function(array){var ret=[],done={};try{for(var i=0,length=array.length;i<length;i++){var id=jQuery.data(array[i]);if(!done[id]){done[id]=true;ret.push(array[i]);}}}catch(e){ret=array;}return ret;},grep:function(elems,callback,inv){var ret=[];for(var i=0,length=elems.length;i<length;i++)if(!inv!=!callback(elems[i],i))ret.push(elems[i]);return ret;},map:function(elems,callback){var ret=[];for(var i=0,length=elems.length;i<length;i++){var value=callback(elems[i],i);if(value!=null)ret[ret.length]=value;}return ret.concat.apply([],ret);}});var userAgent=navigator.userAgent.toLowerCase();jQuery.browser={version:(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[])[1],safari:/webkit/.test(userAgent),opera:/opera/.test(userAgent),msie:/msie/.test(userAgent)&&!/opera/.test(userAgent),mozilla:/mozilla/.test(userAgent)&&!/(compatible|webkit)/.test(userAgent)};var styleFloat=jQuery.browser.msie?"styleFloat":"cssFloat";jQuery.extend({boxModel:!jQuery.browser.msie||document.compatMode=="CSS1Compat",props:{"for":"htmlFor","class":"className","float":styleFloat,cssFloat:styleFloat,styleFloat:styleFloat,readonly:"readOnly",maxlength:"maxLength",cellspacing:"cellSpacing"}});jQuery.each({parent:function(elem){return elem.parentNode;},parents:function(elem){return jQuery.dir(elem,"parentNode");},next:function(elem){return jQuery.nth(elem,2,"nextSibling");},prev:function(elem){return jQuery.nth(elem,2,"previousSibling");},nextAll:function(elem){return jQuery.dir(elem,"nextSibling");},prevAll:function(elem){return jQuery.dir(elem,"previousSibling");},siblings:function(elem){return jQuery.sibling(elem.parentNode.firstChild,elem);},children:function(elem){return jQuery.sibling(elem.firstChild);},contents:function(elem){return jQuery.nodeName(elem,"iframe")?elem.contentDocument||elem.contentWindow.document:jQuery.makeArray(elem.childNodes);}},function(name,fn){jQuery.fn[name]=function(selector){var ret=jQuery.map(this,fn);if(selector&&typeof selector=="string")ret=jQuery.multiFilter(selector,ret);return this.pushStack(jQuery.unique(ret));};});jQuery.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(name,original){jQuery.fn[name]=function(){var args=arguments;return this.each(function(){for(var i=0,length=args.length;i<length;i++)jQuery(args[i])[original](this);});};});jQuery.each({removeAttr:function(name){jQuery.attr(this,name,"");if(this.nodeType==1)this.removeAttribute(name);},addClass:function(classNames){jQuery.className.add(this,classNames);},removeClass:function(classNames){jQuery.className.remove(this,classNames);},toggleClass:function(classNames){jQuery.className[jQuery.className.has(this,classNames)?"remove":"add"](this,classNames);},remove:function(selector){if(!selector||jQuery.filter(selector,[this]).r.length){jQuery("*",this).add(this).each(function(){jQuery.event.remove(this);jQuery.removeData(this);});if(this.parentNode)this.parentNode.removeChild(this);}},empty:function(){jQuery(">*",this).remove();while(this.firstChild)this.removeChild(this.firstChild);}},function(name,fn){jQuery.fn[name]=function(){return this.each(fn,arguments);};});jQuery.each(["Height","Width"],function(i,name){var type=name.toLowerCase();jQuery.fn[type]=function(size){return this[0]==window?jQuery.browser.opera&&document.body["client"+name]||jQuery.browser.safari&&window["inner"+name]||document.compatMode=="CSS1Compat"&&document.documentElement["client"+name]||document.body["client"+name]:this[0]==document?Math.max(Math.max(document.body["scroll"+name],document.documentElement["scroll"+name]),Math.max(document.body["offset"+name],document.documentElement["offset"+name])):size==undefined?(this.length?jQuery.css(this[0],type):null):this.css(type,size.constructor==String?size:size+"px");};});function num(elem,prop){return elem[0]&&parseInt(jQuery.curCSS(elem[0],prop,true),10)||0;}var chars=jQuery.browser.safari&&parseInt(jQuery.browser.version)<417?"(?:[\\w*_-]|\\\\.)":"(?:[\\w\u0128-\uFFFF*_-]|\\\\.)",quickChild=new RegExp("^>\\s*("+chars+"+)"),quickID=new RegExp("^("+chars+"+)(#)("+chars+"+)"),quickClass=new RegExp("^([#.]?)("+chars+"*)");jQuery.extend({expr:{"":function(a,i,m){return m[2]=="*"||jQuery.nodeName(a,m[2]);},"#":function(a,i,m){return a.getAttribute("id")==m[2];},":":{lt:function(a,i,m){return i<m[3]-0;},gt:function(a,i,m){return i>m[3]-0;},nth:function(a,i,m){return m[3]-0==i;},eq:function(a,i,m){return m[3]-0==i;},first:function(a,i){return i==0;},last:function(a,i,m,r){return i==r.length-1;},even:function(a,i){return i%2==0;},odd:function(a,i){return i%2;},"first-child":function(a){return a.parentNode.getElementsByTagName("*")[0]==a;},"last-child":function(a){return jQuery.nth(a.parentNode.lastChild,1,"previousSibling")==a;},"only-child":function(a){return!jQuery.nth(a.parentNode.lastChild,2,"previousSibling");},parent:function(a){return a.firstChild;},empty:function(a){return!a.firstChild;},contains:function(a,i,m){return(a.textContent||a.innerText||jQuery(a).text()||"").indexOf(m[3])>=0;},visible:function(a){return"hidden"!=a.type&&jQuery.css(a,"display")!="none"&&jQuery.css(a,"visibility")!="hidden";},hidden:function(a){return"hidden"==a.type||jQuery.css(a,"display")=="none"||jQuery.css(a,"visibility")=="hidden";},enabled:function(a){return!a.disabled;},disabled:function(a){return a.disabled;},checked:function(a){return a.checked;},selected:function(a){return a.selected||jQuery.attr(a,"selected");},text:function(a){return"text"==a.type;},radio:function(a){return"radio"==a.type;},checkbox:function(a){return"checkbox"==a.type;},file:function(a){return"file"==a.type;},password:function(a){return"password"==a.type;},submit:function(a){return"submit"==a.type;},image:function(a){return"image"==a.type;},reset:function(a){return"reset"==a.type;},button:function(a){return"button"==a.type||jQuery.nodeName(a,"button");},input:function(a){return/input|select|textarea|button/i.test(a.nodeName);},has:function(a,i,m){return jQuery.find(m[3],a).length;},header:function(a){return/h\d/i.test(a.nodeName);},animated:function(a){return jQuery.grep(jQuery.timers,function(fn){return a==fn.elem;}).length;}}},parse:[/^(\[) *@?([\w-]+) *([!*$^~=]*) *('?"?)(.*?)\4 *\]/,/^(:)([\w-]+)\("?'?(.*?(\(.*?\))?[^(]*?)"?'?\)/,new RegExp("^([:.#]*)("+chars+"+)")],multiFilter:function(expr,elems,not){var old,cur=[];while(expr&&expr!=old){old=expr;var f=jQuery.filter(expr,elems,not);expr=f.t.replace(/^\s*,\s*/,"");cur=not?elems=f.r:jQuery.merge(cur,f.r);}return cur;},find:function(t,context){if(typeof t!="string")return[t];if(context&&context.nodeType!=1&&context.nodeType!=9)return[];context=context||document;var ret=[context],done=[],last,nodeName;while(t&&last!=t){var r=[];last=t;t=jQuery.trim(t);var foundToken=false,re=quickChild,m=re.exec(t);if(m){nodeName=m[1].toUpperCase();for(var i=0;ret[i];i++)for(var c=ret[i].firstChild;c;c=c.nextSibling)if(c.nodeType==1&&(nodeName=="*"||c.nodeName.toUpperCase()==nodeName))r.push(c);ret=r;t=t.replace(re,"");if(t.indexOf(" ")==0)continue;foundToken=true;}else{re=/^([>+~])\s*(\w*)/i;if((m=re.exec(t))!=null){r=[];var merge={};nodeName=m[2].toUpperCase();m=m[1];for(var j=0,rl=ret.length;j<rl;j++){var n=m=="~"||m=="+"?ret[j].nextSibling:ret[j].firstChild;for(;n;n=n.nextSibling)if(n.nodeType==1){var id=jQuery.data(n);if(m=="~"&&merge[id])break;if(!nodeName||n.nodeName.toUpperCase()==nodeName){if(m=="~")merge[id]=true;r.push(n);}if(m=="+")break;}}ret=r;t=jQuery.trim(t.replace(re,""));foundToken=true;}}if(t&&!foundToken){if(!t.indexOf(",")){if(context==ret[0])ret.shift();done=jQuery.merge(done,ret);r=ret=[context];t=" "+t.substr(1,t.length);}else{var re2=quickID;var m=re2.exec(t);if(m){m=[0,m[2],m[3],m[1]];}else{re2=quickClass;m=re2.exec(t);}m[2]=m[2].replace(/\\/g,"");var elem=ret[ret.length-1];if(m[1]=="#"&&elem&&elem.getElementById&&!jQuery.isXMLDoc(elem)){var oid=elem.getElementById(m[2]);if((jQuery.browser.msie||jQuery.browser.opera)&&oid&&typeof oid.id=="string"&&oid.id!=m[2])oid=jQuery('[@id="'+m[2]+'"]',elem)[0];ret=r=oid&&(!m[3]||jQuery.nodeName(oid,m[3]))?[oid]:[];}else{for(var i=0;ret[i];i++){var tag=m[1]=="#"&&m[3]?m[3]:m[1]!=""||m[0]==""?"*":m[2];if(tag=="*"&&ret[i].nodeName.toLowerCase()=="object")tag="param";r=jQuery.merge(r,ret[i].getElementsByTagName(tag));}if(m[1]==".")r=jQuery.classFilter(r,m[2]);if(m[1]=="#"){var tmp=[];for(var i=0;r[i];i++)if(r[i].getAttribute("id")==m[2]){tmp=[r[i]];break;}r=tmp;}ret=r;}t=t.replace(re2,"");}}if(t){var val=jQuery.filter(t,r);ret=r=val.r;t=jQuery.trim(val.t);}}if(t)ret=[];if(ret&&context==ret[0])ret.shift();done=jQuery.merge(done,ret);return done;},classFilter:function(r,m,not){m=" "+m+" ";var tmp=[];for(var i=0;r[i];i++){var pass=(" "+r[i].className+" ").indexOf(m)>=0;if(!not&&pass||not&&!pass)tmp.push(r[i]);}return tmp;},filter:function(t,r,not){var last;while(t&&t!=last){last=t;var p=jQuery.parse,m;for(var i=0;p[i];i++){m=p[i].exec(t);if(m){t=t.substring(m[0].length);m[2]=m[2].replace(/\\/g,"");break;}}if(!m)break;if(m[1]==":"&&m[2]=="not")r=isSimple.test(m[3])?jQuery.filter(m[3],r,true).r:jQuery(r).not(m[3]);else if(m[1]==".")r=jQuery.classFilter(r,m[2],not);else if(m[1]=="["){var tmp=[],type=m[3];for(var i=0,rl=r.length;i<rl;i++){var a=r[i],z=a[jQuery.props[m[2]]||m[2]];if(z==null||/href|src|selected/.test(m[2]))z=jQuery.attr(a,m[2])||'';if((type==""&&!!z||type=="="&&z==m[5]||type=="!="&&z!=m[5]||type=="^="&&z&&!z.indexOf(m[5])||type=="$="&&z.substr(z.length-m[5].length)==m[5]||(type=="*="||type=="~=")&&z.indexOf(m[5])>=0)^not)tmp.push(a);}r=tmp;}else if(m[1]==":"&&m[2]=="nth-child"){var merge={},tmp=[],test=/(-?)(\d*)n((?:\+|-)?\d*)/.exec(m[3]=="even"&&"2n"||m[3]=="odd"&&"2n+1"||!/\D/.test(m[3])&&"0n+"+m[3]||m[3]),first=(test[1]+(test[2]||1))-0,last=test[3]-0;for(var i=0,rl=r.length;i<rl;i++){var node=r[i],parentNode=node.parentNode,id=jQuery.data(parentNode);if(!merge[id]){var c=1;for(var n=parentNode.firstChild;n;n=n.nextSibling)if(n.nodeType==1)n.nodeIndex=c++;merge[id]=true;}var add=false;if(first==0){if(node.nodeIndex==last)add=true;}else if((node.nodeIndex-last)%first==0&&(node.nodeIndex-last)/first>=0)add=true;if(add^not)tmp.push(node);}r=tmp;}else{var fn=jQuery.expr[m[1]];if(typeof fn=="object")fn=fn[m[2]];if(typeof fn=="string")fn=eval("false||function(a,i){return "+fn+";}");r=jQuery.grep(r,function(elem,i){return fn(elem,i,m,r);},not);}}return{r:r,t:t};},dir:function(elem,dir){var matched=[],cur=elem[dir];while(cur&&cur!=document){if(cur.nodeType==1)matched.push(cur);cur=cur[dir];}return matched;},nth:function(cur,result,dir,elem){result=result||1;var num=0;for(;cur;cur=cur[dir])if(cur.nodeType==1&&++num==result)break;return cur;},sibling:function(n,elem){var r=[];for(;n;n=n.nextSibling){if(n.nodeType==1&&n!=elem)r.push(n);}return r;}});jQuery.event={add:function(elem,types,handler,data){if(elem.nodeType==3||elem.nodeType==8)return;if(jQuery.browser.msie&&elem.setInterval)elem=window;if(!handler.guid)handler.guid=this.guid++;if(data!=undefined){var fn=handler;handler=this.proxy(fn,function(){return fn.apply(this,arguments);});handler.data=data;}var events=jQuery.data(elem,"events")||jQuery.data(elem,"events",{}),handle=jQuery.data(elem,"handle")||jQuery.data(elem,"handle",function(){if(typeof jQuery!="undefined"&&!jQuery.event.triggered)return jQuery.event.handle.apply(arguments.callee.elem,arguments);});handle.elem=elem;jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];handler.type=parts[1];var handlers=events[type];if(!handlers){handlers=events[type]={};if(!jQuery.event.special[type]||jQuery.event.special[type].setup.call(elem)===false){if(elem.addEventListener)elem.addEventListener(type,handle,false);else if(elem.attachEvent)elem.attachEvent("on"+type,handle);}}handlers[handler.guid]=handler;jQuery.event.global[type]=true;});elem=null;},guid:1,global:{},remove:function(elem,types,handler){if(elem.nodeType==3||elem.nodeType==8)return;var events=jQuery.data(elem,"events"),ret,index;if(events){if(types==undefined||(typeof types=="string"&&types.charAt(0)=="."))for(var type in events)this.remove(elem,type+(types||""));else{if(types.type){handler=types.handler;types=types.type;}jQuery.each(types.split(/\s+/),function(index,type){var parts=type.split(".");type=parts[0];if(events[type]){if(handler)delete events[type][handler.guid];else
-for(handler in events[type])if(!parts[1]||events[type][handler].type==parts[1])delete events[type][handler];for(ret in events[type])break;if(!ret){if(!jQuery.event.special[type]||jQuery.event.special[type].teardown.call(elem)===false){if(elem.removeEventListener)elem.removeEventListener(type,jQuery.data(elem,"handle"),false);else if(elem.detachEvent)elem.detachEvent("on"+type,jQuery.data(elem,"handle"));}ret=null;delete events[type];}}});}for(ret in events)break;if(!ret){var handle=jQuery.data(elem,"handle");if(handle)handle.elem=null;jQuery.removeData(elem,"events");jQuery.removeData(elem,"handle");}}},trigger:function(type,data,elem,donative,extra){data=jQuery.makeArray(data);if(type.indexOf("!")>=0){type=type.slice(0,-1);var exclusive=true;}if(!elem){if(this.global[type])jQuery("*").add([window,document]).trigger(type,data);}else{if(elem.nodeType==3||elem.nodeType==8)return undefined;var val,ret,fn=jQuery.isFunction(elem[type]||null),event=!data[0]||!data[0].preventDefault;if(event){data.unshift({type:type,target:elem,preventDefault:function(){},stopPropagation:function(){},timeStamp:now()});data[0][expando]=true;}data[0].type=type;if(exclusive)data[0].exclusive=true;var handle=jQuery.data(elem,"handle");if(handle)val=handle.apply(elem,data);if((!fn||(jQuery.nodeName(elem,'a')&&type=="click"))&&elem["on"+type]&&elem["on"+type].apply(elem,data)===false)val=false;if(event)data.shift();if(extra&&jQuery.isFunction(extra)){ret=extra.apply(elem,val==null?data:data.concat(val));if(ret!==undefined)val=ret;}if(fn&&donative!==false&&val!==false&&!(jQuery.nodeName(elem,'a')&&type=="click")){this.triggered=true;try{elem[type]();}catch(e){}}this.triggered=false;}return val;},handle:function(event){var val,ret,namespace,all,handlers;event=arguments[0]=jQuery.event.fix(event||window.event);namespace=event.type.split(".");event.type=namespace[0];namespace=namespace[1];all=!namespace&&!event.exclusive;handlers=(jQuery.data(this,"events")||{})[event.type];for(var j in handlers){var handler=handlers[j];if(all||handler.type==namespace){event.handler=handler;event.data=handler.data;ret=handler.apply(this,arguments);if(val!==false)val=ret;if(ret===false){event.preventDefault();event.stopPropagation();}}}return val;},fix:function(event){if(event[expando]==true)return event;var originalEvent=event;event={originalEvent:originalEvent};var props="altKey attrChange attrName bubbles button cancelable charCode clientX clientY ctrlKey currentTarget data detail eventPhase fromElement handler keyCode metaKey newValue originalTarget pageX pageY prevValue relatedNode relatedTarget screenX screenY shiftKey srcElement target timeStamp toElement type view wheelDelta which".split(" ");for(var i=props.length;i;i--)event[props[i]]=originalEvent[props[i]];event[expando]=true;event.preventDefault=function(){if(originalEvent.preventDefault)originalEvent.preventDefault();originalEvent.returnValue=false;};event.stopPropagation=function(){if(originalEvent.stopPropagation)originalEvent.stopPropagation();originalEvent.cancelBubble=true;};event.timeStamp=event.timeStamp||now();if(!event.target)event.target=event.srcElement||document;if(event.target.nodeType==3)event.target=event.target.parentNode;if(!event.relatedTarget&&event.fromElement)event.relatedTarget=event.fromElement==event.target?event.toElement:event.fromElement;if(event.pageX==null&&event.clientX!=null){var doc=document.documentElement,body=document.body;event.pageX=event.clientX+(doc&&doc.scrollLeft||body&&body.scrollLeft||0)-(doc.clientLeft||0);event.pageY=event.clientY+(doc&&doc.scrollTop||body&&body.scrollTop||0)-(doc.clientTop||0);}if(!event.which&&((event.charCode||event.charCode===0)?event.charCode:event.keyCode))event.which=event.charCode||event.keyCode;if(!event.metaKey&&event.ctrlKey)event.metaKey=event.ctrlKey;if(!event.which&&event.button)event.which=(event.button&1?1:(event.button&2?3:(event.button&4?2:0)));return event;},proxy:function(fn,proxy){proxy.guid=fn.guid=fn.guid||proxy.guid||this.guid++;return proxy;},special:{ready:{setup:function(){bindReady();return;},teardown:function(){return;}},mouseenter:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseover",jQuery.event.special.mouseenter.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseover",jQuery.event.special.mouseenter.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseenter";return jQuery.event.handle.apply(this,arguments);}},mouseleave:{setup:function(){if(jQuery.browser.msie)return false;jQuery(this).bind("mouseout",jQuery.event.special.mouseleave.handler);return true;},teardown:function(){if(jQuery.browser.msie)return false;jQuery(this).unbind("mouseout",jQuery.event.special.mouseleave.handler);return true;},handler:function(event){if(withinElement(event,this))return true;event.type="mouseleave";return jQuery.event.handle.apply(this,arguments);}}}};jQuery.fn.extend({bind:function(type,data,fn){return type=="unload"?this.one(type,data,fn):this.each(function(){jQuery.event.add(this,type,fn||data,fn&&data);});},one:function(type,data,fn){var one=jQuery.event.proxy(fn||data,function(event){jQuery(this).unbind(event,one);return(fn||data).apply(this,arguments);});return this.each(function(){jQuery.event.add(this,type,one,fn&&data);});},unbind:function(type,fn){return this.each(function(){jQuery.event.remove(this,type,fn);});},trigger:function(type,data,fn){return this.each(function(){jQuery.event.trigger(type,data,this,true,fn);});},triggerHandler:function(type,data,fn){return this[0]&&jQuery.event.trigger(type,data,this[0],false,fn);},toggle:function(fn){var args=arguments,i=1;while(i<args.length)jQuery.event.proxy(fn,args[i++]);return this.click(jQuery.event.proxy(fn,function(event){this.lastToggle=(this.lastToggle||0)%i;event.preventDefault();return args[this.lastToggle++].apply(this,arguments)||false;}));},hover:function(fnOver,fnOut){return this.bind('mouseenter',fnOver).bind('mouseleave',fnOut);},ready:function(fn){bindReady();if(jQuery.isReady)fn.call(document,jQuery);else
-jQuery.readyList.push(function(){return fn.call(this,jQuery);});return this;}});jQuery.extend({isReady:false,readyList:[],ready:function(){if(!jQuery.isReady){jQuery.isReady=true;if(jQuery.readyList){jQuery.each(jQuery.readyList,function(){this.call(document);});jQuery.readyList=null;}jQuery(document).triggerHandler("ready");}}});var readyBound=false;function bindReady(){if(readyBound)return;readyBound=true;if(document.addEventListener&&!jQuery.browser.opera)document.addEventListener("DOMContentLoaded",jQuery.ready,false);if(jQuery.browser.msie&&window==top)(function(){if(jQuery.isReady)return;try{document.documentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0);return;}jQuery.ready();})();if(jQuery.browser.opera)document.addEventListener("DOMContentLoaded",function(){if(jQuery.isReady)return;for(var i=0;i<document.styleSheets.length;i++)if(document.styleSheets[i].disabled){setTimeout(arguments.callee,0);return;}jQuery.ready();},false);if(jQuery.browser.safari){var numStyles;(function(){if(jQuery.isReady)return;if(document.readyState!="loaded"&&document.readyState!="complete"){setTimeout(arguments.callee,0);return;}if(numStyles===undefined)numStyles=jQuery("style, link[rel=stylesheet]").length;if(document.styleSheets.length!=numStyles){setTimeout(arguments.callee,0);return;}jQuery.ready();})();}jQuery.event.add(window,"load",jQuery.ready);}jQuery.each(("blur,focus,load,resize,scroll,unload,click,dblclick,"+"mousedown,mouseup,mousemove,mouseover,mouseout,change,select,"+"submit,keydown,keypress,keyup,error").split(","),function(i,name){jQuery.fn[name]=function(fn){return fn?this.bind(name,fn):this.trigger(name);};});var withinElement=function(event,elem){var parent=event.relatedTarget;while(parent&&parent!=elem)try{parent=parent.parentNode;}catch(error){parent=elem;}return parent==elem;};jQuery(window).bind("unload",function(){jQuery("*").add(document).unbind();});jQuery.fn.extend({_load:jQuery.fn.load,load:function(url,params,callback){if(typeof url!='string')return this._load(url);var off=url.indexOf(" ");if(off>=0){var selector=url.slice(off,url.length);url=url.slice(0,off);}callback=callback||function(){};var type="GET";if(params)if(jQuery.isFunction(params)){callback=params;params=null;}else{params=jQuery.param(params);type="POST";}var self=this;jQuery.ajax({url:url,type:type,dataType:"html",data:params,complete:function(res,status){if(status=="success"||status=="notmodified")self.html(selector?jQuery("<div/>").append(res.responseText.replace(/<script(.|\s)*?\/script>/g,"")).find(selector):res.responseText);self.each(callback,[res.responseText,status,res]);}});return this;},serialize:function(){return jQuery.param(this.serializeArray());},serializeArray:function(){return this.map(function(){return jQuery.nodeName(this,"form")?jQuery.makeArray(this.elements):this;}).filter(function(){return this.name&&!this.disabled&&(this.checked||/select|textarea/i.test(this.nodeName)||/text|hidden|password/i.test(this.type));}).map(function(i,elem){var val=jQuery(this).val();return val==null?null:val.constructor==Array?jQuery.map(val,function(val,i){return{name:elem.name,value:val};}):{name:elem.name,value:val};}).get();}});jQuery.each("ajaxStart,ajaxStop,ajaxComplete,ajaxError,ajaxSuccess,ajaxSend".split(","),function(i,o){jQuery.fn[o]=function(f){return this.bind(o,f);};});var jsc=now();jQuery.extend({get:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data=null;}return jQuery.ajax({type:"GET",url:url,data:data,success:callback,dataType:type});},getScript:function(url,callback){return jQuery.get(url,null,callback,"script");},getJSON:function(url,data,callback){return jQuery.get(url,data,callback,"json");},post:function(url,data,callback,type){if(jQuery.isFunction(data)){callback=data;data={};}return jQuery.ajax({type:"POST",url:url,data:data,success:callback,dataType:type});},ajaxSetup:function(settings){jQuery.extend(jQuery.ajaxSettings,settings);},ajaxSettings:{url:location.href,global:true,type:"GET",timeout:0,contentType:"application/x-www-form-urlencoded",processData:true,async:true,data:null,username:null,password:null,accepts:{xml:"application/xml, text/xml",html:"text/html",script:"text/javascript, application/javascript",json:"application/json, text/javascript",text:"text/plain",_default:"*/*"}},lastModified:{},ajax:function(s){s=jQuery.extend(true,s,jQuery.extend(true,{},jQuery.ajaxSettings,s));var jsonp,jsre=/=\?(&|$)/g,status,data,type=s.type.toUpperCase();if(s.data&&s.processData&&typeof s.data!="string")s.data=jQuery.param(s.data);if(s.dataType=="jsonp"){if(type=="GET"){if(!s.url.match(jsre))s.url+=(s.url.match(/\?/)?"&":"?")+(s.jsonp||"callback")+"=?";}else if(!s.data||!s.data.match(jsre))s.data=(s.data?s.data+"&":"")+(s.jsonp||"callback")+"=?";s.dataType="json";}if(s.dataType=="json"&&(s.data&&s.data.match(jsre)||s.url.match(jsre))){jsonp="jsonp"+jsc++;if(s.data)s.data=(s.data+"").replace(jsre,"="+jsonp+"$1");s.url=s.url.replace(jsre,"="+jsonp+"$1");s.dataType="script";window[jsonp]=function(tmp){data=tmp;success();complete();window[jsonp]=undefined;try{delete window[jsonp];}catch(e){}if(head)head.removeChild(script);};}if(s.dataType=="script"&&s.cache==null)s.cache=false;if(s.cache===false&&type=="GET"){var ts=now();var ret=s.url.replace(/(\?|&)_=.*?(&|$)/,"$1_="+ts+"$2");s.url=ret+((ret==s.url)?(s.url.match(/\?/)?"&":"?")+"_="+ts:"");}if(s.data&&type=="GET"){s.url+=(s.url.match(/\?/)?"&":"?")+s.data;s.data=null;}if(s.global&&!jQuery.active++)jQuery.event.trigger("ajaxStart");var remote=/^(?:\w+:)?\/\/([^\/?#]+)/;if(s.dataType=="script"&&type=="GET"&&remote.test(s.url)&&remote.exec(s.url)[1]!=location.host){var head=document.getElementsByTagName("head")[0];var script=document.createElement("script");script.src=s.url;if(s.scriptCharset)script.charset=s.scriptCharset;if(!jsonp){var done=false;script.onload=script.onreadystatechange=function(){if(!done&&(!this.readyState||this.readyState=="loaded"||this.readyState=="complete")){done=true;success();complete();head.removeChild(script);}};}head.appendChild(script);return undefined;}var requestDone=false;var xhr=window.ActiveXObject?new ActiveXObject("Microsoft.XMLHTTP"):new XMLHttpRequest();if(s.username)xhr.open(type,s.url,s.async,s.username,s.password);else
-xhr.open(type,s.url,s.async);try{if(s.data)xhr.setRequestHeader("Content-Type",s.contentType);if(s.ifModified)xhr.setRequestHeader("If-Modified-Since",jQuery.lastModified[s.url]||"Thu, 01 Jan 1970 00:00:00 GMT");xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");xhr.setRequestHeader("Accept",s.dataType&&s.accepts[s.dataType]?s.accepts[s.dataType]+", */*":s.accepts._default);}catch(e){}if(s.beforeSend&&s.beforeSend(xhr,s)===false){s.global&&jQuery.active--;xhr.abort();return false;}if(s.global)jQuery.event.trigger("ajaxSend",[xhr,s]);var onreadystatechange=function(isTimeout){if(!requestDone&&xhr&&(xhr.readyState==4||isTimeout=="timeout")){requestDone=true;if(ival){clearInterval(ival);ival=null;}status=isTimeout=="timeout"&&"timeout"||!jQuery.httpSuccess(xhr)&&"error"||s.ifModified&&jQuery.httpNotModified(xhr,s.url)&&"notmodified"||"success";if(status=="success"){try{data=jQuery.httpData(xhr,s.dataType,s.dataFilter);}catch(e){status="parsererror";}}if(status=="success"){var modRes;try{modRes=xhr.getResponseHeader("Last-Modified");}catch(e){}if(s.ifModified&&modRes)jQuery.lastModified[s.url]=modRes;if(!jsonp)success();}else
-jQuery.handleError(s,xhr,status);complete();if(s.async)xhr=null;}};if(s.async){var ival=setInterval(onreadystatechange,13);if(s.timeout>0)setTimeout(function(){if(xhr){xhr.abort();if(!requestDone)onreadystatechange("timeout");}},s.timeout);}try{xhr.send(s.data);}catch(e){jQuery.handleError(s,xhr,null,e);}if(!s.async)onreadystatechange();function success(){if(s.success)s.success(data,status);if(s.global)jQuery.event.trigger("ajaxSuccess",[xhr,s]);}function complete(){if(s.complete)s.complete(xhr,status);if(s.global)jQuery.event.trigger("ajaxComplete",[xhr,s]);if(s.global&&!--jQuery.active)jQuery.event.trigger("ajaxStop");}return xhr;},handleError:function(s,xhr,status,e){if(s.error)s.error(xhr,status,e);if(s.global)jQuery.event.trigger("ajaxError",[xhr,s,e]);},active:0,httpSuccess:function(xhr){try{return!xhr.status&&location.protocol=="file:"||(xhr.status>=200&&xhr.status<300)||xhr.status==304||xhr.status==1223||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpNotModified:function(xhr,url){try{var xhrRes=xhr.getResponseHeader("Last-Modified");return xhr.status==304||xhrRes==jQuery.lastModified[url]||jQuery.browser.safari&&xhr.status==undefined;}catch(e){}return false;},httpData:function(xhr,type,filter){var ct=xhr.getResponseHeader("content-type"),xml=type=="xml"||!type&&ct&&ct.indexOf("xml")>=0,data=xml?xhr.responseXML:xhr.responseText;if(xml&&data.documentElement.tagName=="parsererror")throw"parsererror";if(filter)data=filter(data,type);if(type=="script")jQuery.globalEval(data);if(type=="json")data=eval("("+data+")");return data;},param:function(a){var s=[];if(a.constructor==Array||a.jquery)jQuery.each(a,function(){s.push(encodeURIComponent(this.name)+"="+encodeURIComponent(this.value));});else
-for(var j in a)if(a[j]&&a[j].constructor==Array)jQuery.each(a[j],function(){s.push(encodeURIComponent(j)+"="+encodeURIComponent(this));});else
-s.push(encodeURIComponent(j)+"="+encodeURIComponent(jQuery.isFunction(a[j])?a[j]():a[j]));return s.join("&").replace(/%20/g,"+");}});jQuery.fn.extend({show:function(speed,callback){return speed?this.animate({height:"show",width:"show",opacity:"show"},speed,callback):this.filter(":hidden").each(function(){this.style.display=this.oldblock||"";if(jQuery.css(this,"display")=="none"){var elem=jQuery("<"+this.tagName+" />").appendTo("body");this.style.display=elem.css("display");if(this.style.display=="none")this.style.display="block";elem.remove();}}).end();},hide:function(speed,callback){return speed?this.animate({height:"hide",width:"hide",opacity:"hide"},speed,callback):this.filter(":visible").each(function(){this.oldblock=this.oldblock||jQuery.css(this,"display");this.style.display="none";}).end();},_toggle:jQuery.fn.toggle,toggle:function(fn,fn2){return jQuery.isFunction(fn)&&jQuery.isFunction(fn2)?this._toggle.apply(this,arguments):fn?this.animate({height:"toggle",width:"toggle",opacity:"toggle"},fn,fn2):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();});},slideDown:function(speed,callback){return this.animate({height:"show"},speed,callback);},slideUp:function(speed,callback){return this.animate({height:"hide"},speed,callback);},slideToggle:function(speed,callback){return this.animate({height:"toggle"},speed,callback);},fadeIn:function(speed,callback){return this.animate({opacity:"show"},speed,callback);},fadeOut:function(speed,callback){return this.animate({opacity:"hide"},speed,callback);},fadeTo:function(speed,to,callback){return this.animate({opacity:to},speed,callback);},animate:function(prop,speed,easing,callback){var optall=jQuery.speed(speed,easing,callback);return this[optall.queue===false?"each":"queue"](function(){if(this.nodeType!=1)return false;var opt=jQuery.extend({},optall),p,hidden=jQuery(this).is(":hidden"),self=this;for(p in prop){if(prop[p]=="hide"&&hidden||prop[p]=="show"&&!hidden)return opt.complete.call(this);if(p=="height"||p=="width"){opt.display=jQuery.css(this,"display");opt.overflow=this.style.overflow;}}if(opt.overflow!=null)this.style.overflow="hidden";opt.curAnim=jQuery.extend({},prop);jQuery.each(prop,function(name,val){var e=new jQuery.fx(self,opt,name);if(/toggle|show|hide/.test(val))e[val=="toggle"?hidden?"show":"hide":val](prop);else{var parts=val.toString().match(/^([+-]=)?([\d+-.]+)(.*)$/),start=e.cur(true)||0;if(parts){var end=parseFloat(parts[2]),unit=parts[3]||"px";if(unit!="px"){self.style[name]=(end||1)+unit;start=((end||1)/e.cur(true))*start;self.style[name]=start+unit;}if(parts[1])end=((parts[1]=="-="?-1:1)*end)+start;e.custom(start,end,unit);}else
-e.custom(start,val,"");}});return true;});},queue:function(type,fn){if(jQuery.isFunction(type)||(type&&type.constructor==Array)){fn=type;type="fx";}if(!type||(typeof type=="string"&&!fn))return queue(this[0],type);return this.each(function(){if(fn.constructor==Array)queue(this,type,fn);else{queue(this,type).push(fn);if(queue(this,type).length==1)fn.call(this);}});},stop:function(clearQueue,gotoEnd){var timers=jQuery.timers;if(clearQueue)this.queue([]);this.each(function(){for(var i=timers.length-1;i>=0;i--)if(timers[i].elem==this){if(gotoEnd)timers[i](true);timers.splice(i,1);}});if(!gotoEnd)this.dequeue();return this;}});var queue=function(elem,type,array){if(elem){type=type||"fx";var q=jQuery.data(elem,type+"queue");if(!q||array)q=jQuery.data(elem,type+"queue",jQuery.makeArray(array));}return q;};jQuery.fn.dequeue=function(type){type=type||"fx";return this.each(function(){var q=queue(this,type);q.shift();if(q.length)q[0].call(this);});};jQuery.extend({speed:function(speed,easing,fn){var opt=speed&&speed.constructor==Object?speed:{complete:fn||!fn&&easing||jQuery.isFunction(speed)&&speed,duration:speed,easing:fn&&easing||easing&&easing.constructor!=Function&&easing};opt.duration=(opt.duration&&opt.duration.constructor==Number?opt.duration:jQuery.fx.speeds[opt.duration])||jQuery.fx.speeds.def;opt.old=opt.complete;opt.complete=function(){if(opt.queue!==false)jQuery(this).dequeue();if(jQuery.isFunction(opt.old))opt.old.call(this);};return opt;},easing:{linear:function(p,n,firstNum,diff){return firstNum+diff*p;},swing:function(p,n,firstNum,diff){return((-Math.cos(p*Math.PI)/2)+0.5)*diff+firstNum;}},timers:[],timerId:null,fx:function(elem,options,prop){this.options=options;this.elem=elem;this.prop=prop;if(!options.orig)options.orig={};}});jQuery.fx.prototype={update:function(){if(this.options.step)this.options.step.call(this.elem,this.now,this);(jQuery.fx.step[this.prop]||jQuery.fx.step._default)(this);if(this.prop=="height"||this.prop=="width")this.elem.style.display="block";},cur:function(force){if(this.elem[this.prop]!=null&&this.elem.style[this.prop]==null)return this.elem[this.prop];var r=parseFloat(jQuery.css(this.elem,this.prop,force));return r&&r>-10000?r:parseFloat(jQuery.curCSS(this.elem,this.prop))||0;},custom:function(from,to,unit){this.startTime=now();this.start=from;this.end=to;this.unit=unit||this.unit||"px";this.now=this.start;this.pos=this.state=0;this.update();var self=this;function t(gotoEnd){return self.step(gotoEnd);}t.elem=this.elem;jQuery.timers.push(t);if(jQuery.timerId==null){jQuery.timerId=setInterval(function(){var timers=jQuery.timers;for(var i=0;i<timers.length;i++)if(!timers[i]())timers.splice(i--,1);if(!timers.length){clearInterval(jQuery.timerId);jQuery.timerId=null;}},13);}},show:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.show=true;this.custom(0,this.cur());if(this.prop=="width"||this.prop=="height")this.elem.style[this.prop]="1px";jQuery(this.elem).show();},hide:function(){this.options.orig[this.prop]=jQuery.attr(this.elem.style,this.prop);this.options.hide=true;this.custom(this.cur(),0);},step:function(gotoEnd){var t=now();if(gotoEnd||t>this.options.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();this.options.curAnim[this.prop]=true;var done=true;for(var i in this.options.curAnim)if(this.options.curAnim[i]!==true)done=false;if(done){if(this.options.display!=null){this.elem.style.overflow=this.options.overflow;this.elem.style.display=this.options.display;if(jQuery.css(this.elem,"display")=="none")this.elem.style.display="block";}if(this.options.hide)this.elem.style.display="none";if(this.options.hide||this.options.show)for(var p in this.options.curAnim)jQuery.attr(this.elem.style,p,this.options.orig[p]);}if(done)this.options.complete.call(this.elem);return false;}else{var n=t-this.startTime;this.state=n/this.options.duration;this.pos=jQuery.easing[this.options.easing||(jQuery.easing.swing?"swing":"linear")](this.state,n,0,1,this.options.duration);this.now=this.start+((this.end-this.start)*this.pos);this.update();}return true;}};jQuery.extend(jQuery.fx,{speeds:{slow:600,fast:200,def:400},step:{scrollLeft:function(fx){fx.elem.scrollLeft=fx.now;},scrollTop:function(fx){fx.elem.scrollTop=fx.now;},opacity:function(fx){jQuery.attr(fx.elem.style,"opacity",fx.now);},_default:function(fx){fx.elem.style[fx.prop]=fx.now+fx.unit;}}});jQuery.fn.offset=function(){var left=0,top=0,elem=this[0],results;if(elem)with(jQuery.browser){var parent=elem.parentNode,offsetChild=elem,offsetParent=elem.offsetParent,doc=elem.ownerDocument,safari2=safari&&parseInt(version)<522&&!/adobeair/i.test(userAgent),css=jQuery.curCSS,fixed=css(elem,"position")=="fixed";if(elem.getBoundingClientRect){var box=elem.getBoundingClientRect();add(box.left+Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),box.top+Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));add(-doc.documentElement.clientLeft,-doc.documentElement.clientTop);}else{add(elem.offsetLeft,elem.offsetTop);while(offsetParent){add(offsetParent.offsetLeft,offsetParent.offsetTop);if(mozilla&&!/^t(able|d|h)$/i.test(offsetParent.tagName)||safari&&!safari2)border(offsetParent);if(!fixed&&css(offsetParent,"position")=="fixed")fixed=true;offsetChild=/^body$/i.test(offsetParent.tagName)?offsetChild:offsetParent;offsetParent=offsetParent.offsetParent;}while(parent&&parent.tagName&&!/^body|html$/i.test(parent.tagName)){if(!/^inline|table.*$/i.test(css(parent,"display")))add(-parent.scrollLeft,-parent.scrollTop);if(mozilla&&css(parent,"overflow")!="visible")border(parent);parent=parent.parentNode;}if((safari2&&(fixed||css(offsetChild,"position")=="absolute"))||(mozilla&&css(offsetChild,"position")!="absolute"))add(-doc.body.offsetLeft,-doc.body.offsetTop);if(fixed)add(Math.max(doc.documentElement.scrollLeft,doc.body.scrollLeft),Math.max(doc.documentElement.scrollTop,doc.body.scrollTop));}results={top:top,left:left};}function border(elem){add(jQuery.curCSS(elem,"borderLeftWidth",true),jQuery.curCSS(elem,"borderTopWidth",true));}function add(l,t){left+=parseInt(l,10)||0;top+=parseInt(t,10)||0;}return results;};jQuery.fn.extend({position:function(){var left=0,top=0,results;if(this[0]){var offsetParent=this.offsetParent(),offset=this.offset(),parentOffset=/^body|html$/i.test(offsetParent[0].tagName)?{top:0,left:0}:offsetParent.offset();offset.top-=num(this,'marginTop');offset.left-=num(this,'marginLeft');parentOffset.top+=num(offsetParent,'borderTopWidth');parentOffset.left+=num(offsetParent,'borderLeftWidth');results={top:offset.top-parentOffset.top,left:offset.left-parentOffset.left};}return results;},offsetParent:function(){var offsetParent=this[0].offsetParent;while(offsetParent&&(!/^body|html$/i.test(offsetParent.tagName)&&jQuery.css(offsetParent,'position')=='static'))offsetParent=offsetParent.offsetParent;return jQuery(offsetParent);}});jQuery.each(['Left','Top'],function(i,name){var method='scroll'+name;jQuery.fn[method]=function(val){if(!this[0])return;return val!=undefined?this.each(function(){this==window||this==document?window.scrollTo(!i?val:jQuery(window).scrollLeft(),i?val:jQuery(window).scrollTop()):this[method]=val;}):this[0]==window||this[0]==document?self[i?'pageYOffset':'pageXOffset']||jQuery.boxModel&&document.documentElement[method]||document.body[method]:this[0][method];};});jQuery.each(["Height","Width"],function(i,name){var tl=i?"Left":"Top",br=i?"Right":"Bottom";jQuery.fn["inner"+name]=function(){return this[name.toLowerCase()]()+num(this,"padding"+tl)+num(this,"padding"+br);};jQuery.fn["outer"+name]=function(margin){return this["inner"+name]()+num(this,"border"+tl+"Width")+num(this,"border"+br+"Width")+(margin?num(this,"margin"+tl)+num(this,"margin"+br):0);};});})(); \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/_static/minus.png b/doc/doc_index/0.3.0/_static/minus.png
deleted file mode 100644
index da1c5620..00000000
--- a/doc/doc_index/0.3.0/_static/minus.png
+++ /dev/null
Binary files differ
diff --git a/doc/doc_index/0.3.0/_static/plus.png b/doc/doc_index/0.3.0/_static/plus.png
deleted file mode 100644
index b3cb3742..00000000
--- a/doc/doc_index/0.3.0/_static/plus.png
+++ /dev/null
Binary files differ
diff --git a/doc/doc_index/0.3.0/_static/pygments.css b/doc/doc_index/0.3.0/_static/pygments.css
deleted file mode 100644
index 1f2d2b61..00000000
--- a/doc/doc_index/0.3.0/_static/pygments.css
+++ /dev/null
@@ -1,61 +0,0 @@
-.hll { background-color: #ffffcc }
-.c { color: #408090; font-style: italic } /* Comment */
-.err { border: 1px solid #FF0000 } /* Error */
-.k { color: #007020; font-weight: bold } /* Keyword */
-.o { color: #666666 } /* Operator */
-.cm { color: #408090; font-style: italic } /* Comment.Multiline */
-.cp { color: #007020 } /* Comment.Preproc */
-.c1 { color: #408090; font-style: italic } /* Comment.Single */
-.cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */
-.gd { color: #A00000 } /* Generic.Deleted */
-.ge { font-style: italic } /* Generic.Emph */
-.gr { color: #FF0000 } /* Generic.Error */
-.gh { color: #000080; font-weight: bold } /* Generic.Heading */
-.gi { color: #00A000 } /* Generic.Inserted */
-.go { color: #303030 } /* Generic.Output */
-.gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */
-.gs { font-weight: bold } /* Generic.Strong */
-.gu { color: #800080; font-weight: bold } /* Generic.Subheading */
-.gt { color: #0040D0 } /* Generic.Traceback */
-.kc { color: #007020; font-weight: bold } /* Keyword.Constant */
-.kd { color: #007020; font-weight: bold } /* Keyword.Declaration */
-.kn { color: #007020; font-weight: bold } /* Keyword.Namespace */
-.kp { color: #007020 } /* Keyword.Pseudo */
-.kr { color: #007020; font-weight: bold } /* Keyword.Reserved */
-.kt { color: #902000 } /* Keyword.Type */
-.m { color: #208050 } /* Literal.Number */
-.s { color: #4070a0 } /* Literal.String */
-.na { color: #4070a0 } /* Name.Attribute */
-.nb { color: #007020 } /* Name.Builtin */
-.nc { color: #0e84b5; font-weight: bold } /* Name.Class */
-.no { color: #60add5 } /* Name.Constant */
-.nd { color: #555555; font-weight: bold } /* Name.Decorator */
-.ni { color: #d55537; font-weight: bold } /* Name.Entity */
-.ne { color: #007020 } /* Name.Exception */
-.nf { color: #06287e } /* Name.Function */
-.nl { color: #002070; font-weight: bold } /* Name.Label */
-.nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */
-.nt { color: #062873; font-weight: bold } /* Name.Tag */
-.nv { color: #bb60d5 } /* Name.Variable */
-.ow { color: #007020; font-weight: bold } /* Operator.Word */
-.w { color: #bbbbbb } /* Text.Whitespace */
-.mf { color: #208050 } /* Literal.Number.Float */
-.mh { color: #208050 } /* Literal.Number.Hex */
-.mi { color: #208050 } /* Literal.Number.Integer */
-.mo { color: #208050 } /* Literal.Number.Oct */
-.sb { color: #4070a0 } /* Literal.String.Backtick */
-.sc { color: #4070a0 } /* Literal.String.Char */
-.sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */
-.s2 { color: #4070a0 } /* Literal.String.Double */
-.se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */
-.sh { color: #4070a0 } /* Literal.String.Heredoc */
-.si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */
-.sx { color: #c65d09 } /* Literal.String.Other */
-.sr { color: #235388 } /* Literal.String.Regex */
-.s1 { color: #4070a0 } /* Literal.String.Single */
-.ss { color: #517918 } /* Literal.String.Symbol */
-.bp { color: #007020 } /* Name.Builtin.Pseudo */
-.vc { color: #bb60d5 } /* Name.Variable.Class */
-.vg { color: #bb60d5 } /* Name.Variable.Global */
-.vi { color: #bb60d5 } /* Name.Variable.Instance */
-.il { color: #208050 } /* Literal.Number.Integer.Long */ \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/_static/searchtools.js b/doc/doc_index/0.3.0/_static/searchtools.js
deleted file mode 100644
index e0226258..00000000
--- a/doc/doc_index/0.3.0/_static/searchtools.js
+++ /dev/null
@@ -1,467 +0,0 @@
-/**
- * helper function to return a node containing the
- * search summary for a given text. keywords is a list
- * of stemmed words, hlwords is the list of normal, unstemmed
- * words. the first one is used to find the occurance, the
- * latter for highlighting it.
- */
-
-jQuery.makeSearchSummary = function(text, keywords, hlwords) {
- var textLower = text.toLowerCase();
- var start = 0;
- $.each(keywords, function() {
- var i = textLower.indexOf(this.toLowerCase());
- if (i > -1)
- start = i;
- });
- start = Math.max(start - 120, 0);
- var excerpt = ((start > 0) ? '...' : '') +
- $.trim(text.substr(start, 240)) +
- ((start + 240 - text.length) ? '...' : '');
- var rv = $('<div class="context"></div>').text(excerpt);
- $.each(hlwords, function() {
- rv = rv.highlightText(this, 'highlight');
- });
- return rv;
-}
-
-/**
- * Porter Stemmer
- */
-var PorterStemmer = function() {
-
- var step2list = {
- ational: 'ate',
- tional: 'tion',
- enci: 'ence',
- anci: 'ance',
- izer: 'ize',
- bli: 'ble',
- alli: 'al',
- entli: 'ent',
- eli: 'e',
- ousli: 'ous',
- ization: 'ize',
- ation: 'ate',
- ator: 'ate',
- alism: 'al',
- iveness: 'ive',
- fulness: 'ful',
- ousness: 'ous',
- aliti: 'al',
- iviti: 'ive',
- biliti: 'ble',
- logi: 'log'
- };
-
- var step3list = {
- icate: 'ic',
- ative: '',
- alize: 'al',
- iciti: 'ic',
- ical: 'ic',
- ful: '',
- ness: ''
- };
-
- var c = "[^aeiou]"; // consonant
- var v = "[aeiouy]"; // vowel
- var C = c + "[^aeiouy]*"; // consonant sequence
- var V = v + "[aeiou]*"; // vowel sequence
-
- var mgr0 = "^(" + C + ")?" + V + C; // [C]VC... is m>0
- var meq1 = "^(" + C + ")?" + V + C + "(" + V + ")?$"; // [C]VC[V] is m=1
- var mgr1 = "^(" + C + ")?" + V + C + V + C; // [C]VCVC... is m>1
- var s_v = "^(" + C + ")?" + v; // vowel in stem
-
- this.stemWord = function (w) {
- var stem;
- var suffix;
- var firstch;
- var origword = w;
-
- if (w.length < 3)
- return w;
-
- var re;
- var re2;
- var re3;
- var re4;
-
- firstch = w.substr(0,1);
- if (firstch == "y")
- w = firstch.toUpperCase() + w.substr(1);
-
- // Step 1a
- re = /^(.+?)(ss|i)es$/;
- re2 = /^(.+?)([^s])s$/;
-
- if (re.test(w))
- w = w.replace(re,"$1$2");
- else if (re2.test(w))
- w = w.replace(re2,"$1$2");
-
- // Step 1b
- re = /^(.+?)eed$/;
- re2 = /^(.+?)(ed|ing)$/;
- if (re.test(w)) {
- var fp = re.exec(w);
- re = new RegExp(mgr0);
- if (re.test(fp[1])) {
- re = /.$/;
- w = w.replace(re,"");
- }
- }
- else if (re2.test(w)) {
- var fp = re2.exec(w);
- stem = fp[1];
- re2 = new RegExp(s_v);
- if (re2.test(stem)) {
- w = stem;
- re2 = /(at|bl|iz)$/;
- re3 = new RegExp("([^aeiouylsz])\\1$");
- re4 = new RegExp("^" + C + v + "[^aeiouwxy]$");
- if (re2.test(w))
- w = w + "e";
- else if (re3.test(w)) {
- re = /.$/;
- w = w.replace(re,"");
- }
- else if (re4.test(w))
- w = w + "e";
- }
- }
-
- // Step 1c
- re = /^(.+?)y$/;
- if (re.test(w)) {
- var fp = re.exec(w);
- stem = fp[1];
- re = new RegExp(s_v);
- if (re.test(stem))
- w = stem + "i";
- }
-
- // Step 2
- re = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/;
- if (re.test(w)) {
- var fp = re.exec(w);
- stem = fp[1];
- suffix = fp[2];
- re = new RegExp(mgr0);
- if (re.test(stem))
- w = stem + step2list[suffix];
- }
-
- // Step 3
- re = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/;
- if (re.test(w)) {
- var fp = re.exec(w);
- stem = fp[1];
- suffix = fp[2];
- re = new RegExp(mgr0);
- if (re.test(stem))
- w = stem + step3list[suffix];
- }
-
- // Step 4
- re = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/;
- re2 = /^(.+?)(s|t)(ion)$/;
- if (re.test(w)) {
- var fp = re.exec(w);
- stem = fp[1];
- re = new RegExp(mgr1);
- if (re.test(stem))
- w = stem;
- }
- else if (re2.test(w)) {
- var fp = re2.exec(w);
- stem = fp[1] + fp[2];
- re2 = new RegExp(mgr1);
- if (re2.test(stem))
- w = stem;
- }
-
- // Step 5
- re = /^(.+?)e$/;
- if (re.test(w)) {
- var fp = re.exec(w);
- stem = fp[1];
- re = new RegExp(mgr1);
- re2 = new RegExp(meq1);
- re3 = new RegExp("^" + C + v + "[^aeiouwxy]$");
- if (re.test(stem) || (re2.test(stem) && !(re3.test(stem))))
- w = stem;
- }
- re = /ll$/;
- re2 = new RegExp(mgr1);
- if (re.test(w) && re2.test(w)) {
- re = /.$/;
- w = w.replace(re,"");
- }
-
- // and turn initial Y back to y
- if (firstch == "y")
- w = firstch.toLowerCase() + w.substr(1);
- return w;
- }
-}
-
-
-/**
- * Search Module
- */
-var Search = {
-
- _index : null,
- _queued_query : null,
- _pulse_status : -1,
-
- init : function() {
- var params = $.getQueryParameters();
- if (params.q) {
- var query = params.q[0];
- $('input[name="q"]')[0].value = query;
- this.performSearch(query);
- }
- },
-
- /**
- * Sets the index
- */
- setIndex : function(index) {
- var q;
- this._index = index;
- if ((q = this._queued_query) !== null) {
- this._queued_query = null;
- Search.query(q);
- }
- },
-
- hasIndex : function() {
- return this._index !== null;
- },
-
- deferQuery : function(query) {
- this._queued_query = query;
- },
-
- stopPulse : function() {
- this._pulse_status = 0;
- },
-
- startPulse : function() {
- if (this._pulse_status >= 0)
- return;
- function pulse() {
- Search._pulse_status = (Search._pulse_status + 1) % 4;
- var dotString = '';
- for (var i = 0; i < Search._pulse_status; i++)
- dotString += '.';
- Search.dots.text(dotString);
- if (Search._pulse_status > -1)
- window.setTimeout(pulse, 500);
- };
- pulse();
- },
-
- /**
- * perform a search for something
- */
- performSearch : function(query) {
- // create the required interface elements
- this.out = $('#search-results');
- this.title = $('<h2>' + _('Searching') + '</h2>').appendTo(this.out);
- this.dots = $('<span></span>').appendTo(this.title);
- this.status = $('<p style="display: none"></p>').appendTo(this.out);
- this.output = $('<ul class="search"/>').appendTo(this.out);
-
- $('#search-progress').text(_('Preparing search...'));
- this.startPulse();
-
- // index already loaded, the browser was quick!
- if (this.hasIndex())
- this.query(query);
- else
- this.deferQuery(query);
- },
-
- query : function(query) {
- // stem the searchterms and add them to the
- // correct list
- var stemmer = new PorterStemmer();
- var searchterms = [];
- var excluded = [];
- var hlterms = [];
- var tmp = query.split(/\s+/);
- var object = (tmp.length == 1) ? tmp[0].toLowerCase() : null;
- for (var i = 0; i < tmp.length; i++) {
- // stem the word
- var word = stemmer.stemWord(tmp[i]).toLowerCase();
- // select the correct list
- if (word[0] == '-') {
- var toAppend = excluded;
- word = word.substr(1);
- }
- else {
- var toAppend = searchterms;
- hlterms.push(tmp[i].toLowerCase());
- }
- // only add if not already in the list
- if (!$.contains(toAppend, word))
- toAppend.push(word);
- };
- var highlightstring = '?highlight=' + $.urlencode(hlterms.join(" "));
-
- console.debug('SEARCH: searching for:');
- console.info('required: ', searchterms);
- console.info('excluded: ', excluded);
-
- // prepare search
- var filenames = this._index.filenames;
- var titles = this._index.titles;
- var terms = this._index.terms;
- var descrefs = this._index.descrefs;
- var modules = this._index.modules;
- var desctypes = this._index.desctypes;
- var fileMap = {};
- var files = null;
- var objectResults = [];
- var regularResults = [];
- $('#search-progress').empty();
-
- // lookup as object
- if (object != null) {
- for (var module in modules) {
- if (module.indexOf(object) > -1) {
- fn = modules[module];
- descr = _('module, in ') + titles[fn];
- objectResults.push([filenames[fn], module, '#module-'+module, descr]);
- }
- }
- for (var prefix in descrefs) {
- for (var name in descrefs[prefix]) {
- var fullname = (prefix ? prefix + '.' : '') + name;
- if (fullname.toLowerCase().indexOf(object) > -1) {
- match = descrefs[prefix][name];
- descr = desctypes[match[1]] + _(', in ') + titles[match[0]];
- objectResults.push([filenames[match[0]], fullname, '#'+fullname, descr]);
- }
- }
- }
- }
-
- // sort results descending
- objectResults.sort(function(a, b) {
- return (a[1] > b[1]) ? -1 : ((a[1] < b[1]) ? 1 : 0);
- });
-
-
- // perform the search on the required terms
- for (var i = 0; i < searchterms.length; i++) {
- var word = searchterms[i];
- // no match but word was a required one
- if ((files = terms[word]) == null)
- break;
- if (files.length == undefined) {
- files = [files];
- }
- // create the mapping
- for (var j = 0; j < files.length; j++) {
- var file = files[j];
- if (file in fileMap)
- fileMap[file].push(word);
- else
- fileMap[file] = [word];
- }
- }
-
- // now check if the files don't contain excluded terms
- for (var file in fileMap) {
- var valid = true;
-
- // check if all requirements are matched
- if (fileMap[file].length != searchterms.length)
- continue;
-
- // ensure that none of the excluded terms is in the
- // search result.
- for (var i = 0; i < excluded.length; i++) {
- if (terms[excluded[i]] == file ||
- $.contains(terms[excluded[i]] || [], file)) {
- valid = false;
- break;
- }
- }
-
- // if we have still a valid result we can add it
- // to the result list
- if (valid)
- regularResults.push([filenames[file], titles[file], '', null]);
- }
-
- // delete unused variables in order to not waste
- // memory until list is retrieved completely
- delete filenames, titles, terms;
-
- // now sort the regular results descending by title
- regularResults.sort(function(a, b) {
- var left = a[1].toLowerCase();
- var right = b[1].toLowerCase();
- return (left > right) ? -1 : ((left < right) ? 1 : 0);
- });
-
- // combine both
- var results = regularResults.concat(objectResults);
-
- // print the results
- var resultCount = results.length;
- function displayNextItem() {
- // results left, load the summary and display it
- if (results.length) {
- var item = results.pop();
- var listItem = $('<li style="display:none"></li>');
- listItem.append($('<a/>').attr(
- 'href',
- item[0] + DOCUMENTATION_OPTIONS.FILE_SUFFIX +
- highlightstring + item[2]).html(item[1]));
- if (item[3]) {
- listItem.append($('<span> (' + item[3] + ')</span>'));
- Search.output.append(listItem);
- listItem.slideDown(5, function() {
- displayNextItem();
- });
- } else if (DOCUMENTATION_OPTIONS.HAS_SOURCE) {
- $.get('_sources/' + item[0] + '.txt', function(data) {
- listItem.append($.makeSearchSummary(data, searchterms, hlterms));
- Search.output.append(listItem);
- listItem.slideDown(5, function() {
- displayNextItem();
- });
- });
- } else {
- // no source available, just display title
- Search.output.append(listItem);
- listItem.slideDown(5, function() {
- displayNextItem();
- });
- }
- }
- // search finished, update title and status message
- else {
- Search.stopPulse();
- Search.title.text(_('Search Results'));
- if (!resultCount)
- Search.status.text(_('Your search did not match any documents. Please make sure that all words are spelled correctly and that you\'ve selected enough categories.'));
- else
- Search.status.text(_('Search finished, found %s page(s) matching the search query.').replace('%s', resultCount));
- Search.status.fadeIn(500);
- }
- }
- displayNextItem();
- }
-}
-
-$(document).ready(function() {
- Search.init();
-});
diff --git a/doc/doc_index/0.3.0/changes.html b/doc/doc_index/0.3.0/changes.html
deleted file mode 100644
index b9303922..00000000
--- a/doc/doc_index/0.3.0/changes.html
+++ /dev/null
@@ -1,602 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Changelog &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="index.html" />
- <link rel="prev" title="Roadmap" href="roadmap.html" />
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li class="right" >
- <a href="roadmap.html" title="Roadmap"
- accesskey="P">previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
- <div class="section" id="changelog">
-<h1>Changelog<a class="headerlink" href="#changelog" title="Permalink to this headline">¶</a></h1>
-<div class="section" id="beta-3">
-<h2>0.3.0 Beta 3<a class="headerlink" href="#beta-3" title="Permalink to this headline">¶</a></h2>
-<ul class="simple">
-<li>Added unicode support for author names. Commit.author.name is now unicode instead of string.</li>
-</ul>
-</div>
-<div class="section" id="beta-2">
-<h2>0.3.0 Beta 2<a class="headerlink" href="#beta-2" title="Permalink to this headline">¶</a></h2>
-<ul class="simple">
-<li>Added python 2.4 support</li>
-</ul>
-</div>
-<div class="section" id="beta-1">
-<h2>0.3.0 Beta 1<a class="headerlink" href="#beta-1" title="Permalink to this headline">¶</a></h2>
-<div class="section" id="renamed-modules">
-<h3>Renamed Modules<a class="headerlink" href="#renamed-modules" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>For consistency with naming conventions used in sub-modules like gitdb, the following modules have been renamed<ul>
-<li>git.utils -&gt; git.util</li>
-<li>git.errors -&gt; git.exc</li>
-<li>git.objects.utils -&gt; git.objects.util</li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="general">
-<h3>General<a class="headerlink" href="#general" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Object instances, and everything derived from it, now use binary sha&#8217;s internally. The &#8216;sha&#8217; member was removed, in favor of the &#8216;binsha&#8217; member. An &#8216;hexsha&#8217; property is available for convenient conversions. They may only be initialized using their binary shas, reference names or revision specs are not allowed anymore.</li>
-<li>IndexEntry instances contained in IndexFile.entries now use binary sha&#8217;s. Use the .hexsha property to obtain the hexadecimal version. The .sha property was removed to make the use of the respective sha more explicit.</li>
-<li>If objects are instantiated explicitly, a binary sha is required to identify the object, where previously any rev-spec could be used. The ref-spec compatible version still exists as Object.new or Repo.commit|Repo.tree respectively.</li>
-<li>The .data attribute was removed from the Object type, to obtain plain data, use the data_stream property instead.</li>
-<li>ConcurrentWriteOperation was removed, and replaced by LockedFD</li>
-<li>IndexFile.get_entries_key was renamed to entry_key</li>
-<li>IndexFile.write_tree: removed missing_ok keyword, its always True now. Instead of raising GitCommandError it raises UnmergedEntriesError. This is required as the pure-python implementation doesn&#8217;t support the missing_ok keyword yet.</li>
-<li>diff.Diff.null_hex_sha renamed to NULL_HEX_SHA, to be conforming with the naming in the Object base class</li>
-</ul>
-</div>
-</div>
-<div class="section" id="id1">
-<h2>0.2 Beta 2<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2>
-<blockquote>
-<ul class="simple">
-<li>Commit objects now carry the &#8216;encoding&#8217; information of their message. It wasn&#8217;t parsed previously, and defaults to UTF-8</li>
-<li>Commit.create_from_tree now uses a pure-python implementation, mimicing git-commit-tree</li>
-</ul>
-</blockquote>
-</div>
-<div class="section" id="id2">
-<h2>0.2<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h2>
-<div class="section" id="id3">
-<h3>General<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>file mode in Tree, Blob and Diff objects now is an int compatible to definintiions
-in the stat module, allowing you to query whether individual user, group and other
-read, write and execute bits are set.</li>
-<li>Adjusted class hierarchy to generally allow comparison and hash for Objects and Refs</li>
-<li>Improved Tag object which now is a Ref that may contain a tag object with additional
-Information</li>
-<li>id_abbrev method has been removed as it could not assure the returned short SHA&#8217;s
-where unique</li>
-<li>removed basename method from Objects with path&#8217;s as it replicated features of os.path</li>
-<li>from_string and list_from_string methods are now private and were renamed to
-_from_string and _list_from_string respectively. As part of the private API, they
-may change without prior notice.</li>
-<li>Renamed all find_all methods to list_items - this method is part of the Iterable interface
-that also provides a more efficients and more responsive iter_items method</li>
-<li>All dates, like authored_date and committer_date, are stored as seconds since epoc
-to consume less memory - they can be converted using time.gmtime in a more suitable
-presentation format if needed.</li>
-<li>Named method parameters changed on a wide scale to unify their use. Now git specific
-terms are used everywhere, such as &#8220;Reference&#8221; ( ref ) and &#8220;Revision&#8221; ( rev ).
-Prevously multiple terms where used making it harder to know which type was allowed
-or not.</li>
-<li>Unified diff interface to allow easy diffing between trees, trees and index, trees
-and working tree, index and working tree, trees and index. This closely follows
-the git-diff capabilities.</li>
-<li>Git.execute does not take the with_raw_output option anymore. It was not used
-by anyone within the project and False by default.</li>
-</ul>
-</div>
-<div class="section" id="item-iteration">
-<h3>Item Iteration<a class="headerlink" href="#item-iteration" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Previously one would return and process multiple items as list only which can
-hurt performance and memory consumption and reduce response times.
-iter_items method provide an iterator that will return items on demand as parsed
-from a stream. This way any amount of objects can be handled.</li>
-<li>list_items method returns IterableList allowing to access list members by name</li>
-</ul>
-</div>
-<div class="section" id="objects-package">
-<h3>objects Package<a class="headerlink" href="#objects-package" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>blob, tree, tag and commit module have been moved to new objects package. This should
-not affect you though unless you explicitly imported individual objects. If you just
-used the git package, names did not change.</li>
-</ul>
-</div>
-<div class="section" id="blob">
-<h3>Blob<a class="headerlink" href="#blob" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>former &#8216;name&#8217; member renamed to path as it suits the actual data better</li>
-</ul>
-</div>
-<div class="section" id="gitcommand">
-<h3>GitCommand<a class="headerlink" href="#gitcommand" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>git.subcommand call scheme now prunes out None from the argument list, allowing
-to be called more confortably as None can never be a valid to the git command
-if converted to a string.</li>
-<li>Renamed &#8216;git_dir&#8217; attribute to &#8216;working_dir&#8217; which is exactly how it is used</li>
-</ul>
-</div>
-<div class="section" id="commit">
-<h3>Commit<a class="headerlink" href="#commit" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>&#8216;count&#8217; method is not an instance method to increase its ease of use</li>
-<li>&#8216;name_rev&#8217; property returns a nice name for the commit&#8217;s sha</li>
-</ul>
-</div>
-<div class="section" id="config">
-<h3>Config<a class="headerlink" href="#config" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>The git configuration can now be read and manipulated directly from within python
-using the GitConfigParser</li>
-<li>Repo.config_reader() returns a read-only parser</li>
-<li>Repo.config_writer() returns a read-write parser</li>
-</ul>
-</div>
-<div class="section" id="diff">
-<h3>Diff<a class="headerlink" href="#diff" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Members a a_commit and b_commit renamed to a_blob and b_blob - they are populated
-with Blob objects if possible</li>
-<li>Members a_path and b_path removed as this information is kept in the blobs</li>
-<li>Diffs are now returned as DiffIndex allowing to more quickly find the kind of
-diffs you are interested in</li>
-</ul>
-</div>
-<div class="section" id="diffing">
-<h3>Diffing<a class="headerlink" href="#diffing" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Commit and Tree objects now support diffing natively with a common interface to
-compare agains other Commits or Trees, against the working tree or against the index.</li>
-</ul>
-</div>
-<div class="section" id="index">
-<h3>Index<a class="headerlink" href="#index" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>A new Index class allows to read and write index files directly, and to perform
-simple two and three way merges based on an arbitrary index.</li>
-</ul>
-</div>
-<div class="section" id="referernces">
-<h3>Referernces<a class="headerlink" href="#referernces" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>References are object that point to a Commit</li>
-<li>SymbolicReference are a pointer to a Reference Object, which itself points to a specific
-Commit</li>
-<li>They will dynmically retrieve their object at the time of query to assure the information
-is actual. Recently objects would be cached, hence ref object not be safely kept
-persistent.</li>
-</ul>
-</div>
-<div class="section" id="repo">
-<h3>Repo<a class="headerlink" href="#repo" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Moved blame method from Blob to repo as it appeared to belong there much more.</li>
-<li>active_branch method now returns a Head object instead of a string with the name
-of the active branch.</li>
-<li>tree method now requires a Ref instance as input and defaults to the active_branche
-instead of master</li>
-<li>is_dirty now takes additional arguments allowing fine-grained control about what is
-considered dirty</li>
-<li>Removed the following methods:<ul>
-<li>&#8216;log&#8217; method as it as effectively the same as the &#8216;commits&#8217; method</li>
-<li>&#8216;commits_since&#8217; as it is just a flag given to rev-list in Commit.iter_items</li>
-<li>&#8216;commit_count&#8217; as it was just a redirection to the respective commit method</li>
-<li>&#8216;commits_between&#8217;, replaced by a note on the iter_commits method as it can achieve the same thing</li>
-<li>&#8216;commit_delta_from&#8217; as it was a very special case by comparing two different repjrelated repositories, i.e. clones, git-rev-list would be sufficient to find commits that would need to be transferred for example.</li>
-<li>&#8216;create&#8217; method which equals the &#8216;init&#8217; method&#8217;s functionality</li>
-<li>&#8216;diff&#8217; - it returned a mere string which still had to be parsed</li>
-<li>&#8216;commit_diff&#8217; - moved to Commit, Tree and Diff types respectively</li>
-</ul>
-</li>
-<li>Renamed the following methods:<ul>
-<li>commits to iter_commits to improve the performance, adjusted signature</li>
-<li>init_bare to init, implying less about the options to be used</li>
-<li>fork_bare to clone, as it was to represent general clone functionality, but implied
-a bare clone to be more versatile</li>
-<li>archive_tar_gz and archive_tar and replaced by archive method with different signature</li>
-</ul>
-</li>
-<li>&#8216;commits&#8217; method has no max-count of returned commits anymore, it now behaves like git-rev-list</li>
-<li>The following methods and properties were added<ul>
-<li>&#8216;untracked_files&#8217; property, returning all currently untracked files</li>
-<li>&#8216;head&#8217;, creates a head object</li>
-<li>&#8216;tag&#8217;, creates a tag object</li>
-<li>&#8216;iter_trees&#8217; method</li>
-<li>&#8216;config_reader&#8217; method</li>
-<li>&#8216;config_writer&#8217; method</li>
-<li>&#8216;bare&#8217; property, previously it was a simple attribute that could be written</li>
-</ul>
-</li>
-<li>Renamed the following attributes<ul>
-<li>&#8216;path&#8217; is now &#8216;git_dir&#8217;</li>
-<li>&#8216;wd&#8217; is now &#8216;working_dir&#8217;</li>
-</ul>
-</li>
-<li>Added attribute<ul>
-<li>&#8216;working_tree_dir&#8217; which may be None in case of bare repositories</li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="remote">
-<h3>Remote<a class="headerlink" href="#remote" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Added Remote object allowing easy access to remotes</li>
-<li>Repo.remotes lists all remotes</li>
-<li>Repo.remote returns a remote of the specified name if it exists</li>
-</ul>
-</div>
-<div class="section" id="test-framework">
-<h3>Test Framework<a class="headerlink" href="#test-framework" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Added support for common TestCase base class that provides additional functionality
-to receive repositories tests can also write to. This way, more aspects can be
-tested under real-world ( un-mocked ) conditions.</li>
-</ul>
-</div>
-<div class="section" id="tree">
-<h3>Tree<a class="headerlink" href="#tree" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>former &#8216;name&#8217; member renamed to path as it suits the actual data better</li>
-<li>added traverse method allowing to recursively traverse tree items</li>
-<li>deleted blob method</li>
-<li>added blobs and trees properties allowing to query the respective items in the
-tree</li>
-<li>now mimics behaviour of a read-only list instead of a dict to maintain order.</li>
-<li>content_from_string method is now private and not part of the public API anymore</li>
-</ul>
-</div>
-</div>
-<div class="section" id="id4">
-<h2>0.1.6<a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h2>
-<div class="section" id="id5">
-<h3>General<a class="headerlink" href="#id5" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Added in Sphinx documentation.</li>
-<li>Removed ambiguity between paths and treeishs. When calling commands that
-accept treeish and path arguments and there is a path with the same name as
-a treeish git cowardly refuses to pick one and asks for the command to use
-the unambiguous syntax where &#8216;&#8211;&#8217; seperates the treeish from the paths.</li>
-<li><tt class="docutils literal"><span class="pre">Repo.commits</span></tt>, <tt class="docutils literal"><span class="pre">Repo.commits_between</span></tt>, <tt class="docutils literal"><span class="pre">Reop.commits_since</span></tt>,
-<tt class="docutils literal"><span class="pre">Repo.commit_count</span></tt>, <tt class="docutils literal"><span class="pre">Repo.commit</span></tt>, <tt class="docutils literal"><span class="pre">Commit.count</span></tt> and
-<tt class="docutils literal"><span class="pre">Commit.find_all</span></tt> all now optionally take a path argument which
-constrains the lookup by path. This changes the order of the positional
-arguments in <tt class="docutils literal"><span class="pre">Repo.commits</span></tt> and <tt class="docutils literal"><span class="pre">Repo.commits_since</span></tt>.</li>
-</ul>
-</div>
-<div class="section" id="id6">
-<h3>Commit<a class="headerlink" href="#id6" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li><tt class="docutils literal"><span class="pre">Commit.message</span></tt> now contains the full commit message (rather than just
-the first line) and a new property <tt class="docutils literal"><span class="pre">Commit.summary</span></tt> contains the first
-line of the commit message.</li>
-<li>Fixed a failure when trying to lookup the stats of a parentless commit from
-a bare repo.</li>
-</ul>
-</div>
-<div class="section" id="id7">
-<h3>Diff<a class="headerlink" href="#id7" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>The diff parser is now far faster and also addresses a bug where
-sometimes b_mode was not set.</li>
-<li>Added support for parsing rename info to the diff parser. Addition of new
-properties <tt class="docutils literal"><span class="pre">Diff.renamed</span></tt>, <tt class="docutils literal"><span class="pre">Diff.rename_from</span></tt>, and <tt class="docutils literal"><span class="pre">Diff.rename_to</span></tt>.</li>
-</ul>
-</div>
-<div class="section" id="head">
-<h3>Head<a class="headerlink" href="#head" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Corrected problem where branches was only returning the last path component
-instead of the entire path component following refs/heads/.</li>
-</ul>
-</div>
-<div class="section" id="id8">
-<h3>Repo<a class="headerlink" href="#id8" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Modified the gzip archive creation to use the python gzip module.</li>
-<li>Corrected <tt class="docutils literal"><span class="pre">commits_between</span></tt> always returning None instead of the reversed
-list.</li>
-</ul>
-</div>
-</div>
-<div class="section" id="id9">
-<h2>0.1.5<a class="headerlink" href="#id9" title="Permalink to this headline">¶</a></h2>
-<div class="section" id="id10">
-<h3>General<a class="headerlink" href="#id10" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>upgraded to Mock 0.4 dependency.</li>
-<li>Replace GitPython with git in repr() outputs.</li>
-<li>Fixed packaging issue caused by ez_setup.py.</li>
-</ul>
-</div>
-<div class="section" id="id11">
-<h3>Blob<a class="headerlink" href="#id11" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>No longer strip newlines from Blob data.</li>
-</ul>
-</div>
-<div class="section" id="id12">
-<h3>Commit<a class="headerlink" href="#id12" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Corrected problem with git-rev-list &#8211;bisect-all. See
-<a class="reference external" href="http://groups.google.com/group/git-python/browse_thread/thread/aed1d5c4b31d5027">http://groups.google.com/group/git-python/browse_thread/thread/aed1d5c4b31d5027</a></li>
-</ul>
-</div>
-<div class="section" id="id13">
-<h3>Repo<a class="headerlink" href="#id13" title="Permalink to this headline">¶</a></h3>
-<ul>
-<li><p class="first">Corrected problems with creating bare repositories.</p>
-</li>
-<li><p class="first">Repo.tree no longer accepts a path argument. Use:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="nb">dict</span><span class="p">(</span><span class="n">k</span><span class="p">,</span> <span class="n">o</span> <span class="k">for</span> <span class="n">k</span><span class="p">,</span> <span class="n">o</span> <span class="ow">in</span> <span class="n">tree</span><span class="o">.</span><span class="n">items</span><span class="p">()</span> <span class="k">if</span> <span class="n">k</span> <span class="ow">in</span> <span class="n">paths</span><span class="p">)</span>
-</pre></div>
-</div>
-</li>
-<li><p class="first">Made daemon export a property of Repo. Now you can do this:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">exported</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">daemon_export</span>
-<span class="gp">&gt;&gt;&gt; </span><span class="n">repo</span><span class="o">.</span><span class="n">daemon_export</span> <span class="o">=</span> <span class="bp">True</span>
-</pre></div>
-</div>
-</li>
-<li><p class="first">Allows modifying the project description. Do this:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">repo</span><span class="o">.</span><span class="n">description</span> <span class="o">=</span> <span class="s">&quot;Foo Bar&quot;</span>
-<span class="gp">&gt;&gt;&gt; </span><span class="n">repo</span><span class="o">.</span><span class="n">description</span>
-<span class="go">&#39;Foo Bar&#39;</span>
-</pre></div>
-</div>
-</li>
-<li><p class="first">Added a read-only property Repo.is_dirty which reflects the status of the
-working directory.</p>
-</li>
-<li><p class="first">Added a read-only Repo.active_branch property which returns the name of the
-currently active branch.</p>
-</li>
-</ul>
-</div>
-<div class="section" id="id14">
-<h3>Tree<a class="headerlink" href="#id14" title="Permalink to this headline">¶</a></h3>
-<ul>
-<li><p class="first">Switched to using a dictionary for Tree contents since you will usually want
-to access them by name and order is unimportant.</p>
-</li>
-<li><p class="first">Implemented a dictionary protocol for Tree objects. The following:</p>
-<blockquote>
-<p>child = tree.contents[&#8216;grit&#8217;]</p>
-</blockquote>
-<p>becomes:</p>
-<blockquote>
-<p>child = tree[&#8216;grit&#8217;]</p>
-</blockquote>
-</li>
-<li><p class="first">Made Tree.content_from_string a static method.</p>
-</li>
-</ul>
-</div>
-</div>
-<div class="section" id="id15">
-<h2>0.1.4.1<a class="headerlink" href="#id15" title="Permalink to this headline">¶</a></h2>
-<ul class="simple">
-<li>removed <tt class="docutils literal"><span class="pre">method_missing</span></tt> stuff and replaced with a <tt class="docutils literal"><span class="pre">__getattr__</span></tt>
-override in <tt class="docutils literal"><span class="pre">Git</span></tt>.</li>
-</ul>
-</div>
-<div class="section" id="id16">
-<h2>0.1.4<a class="headerlink" href="#id16" title="Permalink to this headline">¶</a></h2>
-<ul class="simple">
-<li>renamed <tt class="docutils literal"><span class="pre">git_python</span></tt> to <tt class="docutils literal"><span class="pre">git</span></tt>. Be sure to delete all pyc files before
-testing.</li>
-</ul>
-<div class="section" id="id17">
-<h3>Commit<a class="headerlink" href="#id17" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Fixed problem with commit stats not working under all conditions.</li>
-</ul>
-</div>
-<div class="section" id="git">
-<h3>Git<a class="headerlink" href="#git" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Renamed module to cmd.</li>
-<li>Removed shell escaping completely.</li>
-<li>Added support for <tt class="docutils literal"><span class="pre">stderr</span></tt>, <tt class="docutils literal"><span class="pre">stdin</span></tt>, and <tt class="docutils literal"><span class="pre">with_status</span></tt>.</li>
-<li><tt class="docutils literal"><span class="pre">git_dir</span></tt> is now optional in the constructor for <tt class="docutils literal"><span class="pre">git.Git</span></tt>. Git now
-falls back to <tt class="docutils literal"><span class="pre">os.getcwd()</span></tt> when git_dir is not specified.</li>
-<li>add a <tt class="docutils literal"><span class="pre">with_exceptions</span></tt> keyword argument to git commands.
-<tt class="docutils literal"><span class="pre">GitCommandError</span></tt> is raised when the exit status is non-zero.</li>
-<li>add support for a <tt class="docutils literal"><span class="pre">GIT_PYTHON_TRACE</span></tt> environment variable.
-<tt class="docutils literal"><span class="pre">GIT_PYTHON_TRACE</span></tt> allows us to debug GitPython&#8217;s usage of git through
-the use of an environment variable.</li>
-</ul>
-</div>
-<div class="section" id="id18">
-<h3>Tree<a class="headerlink" href="#id18" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Fixed up problem where <tt class="docutils literal"><span class="pre">name</span></tt> doesn&#8217;t exist on root of tree.</li>
-</ul>
-</div>
-<div class="section" id="id19">
-<h3>Repo<a class="headerlink" href="#id19" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Corrected problem with creating bare repo. Added <tt class="docutils literal"><span class="pre">Repo.create</span></tt> alias.</li>
-</ul>
-</div>
-</div>
-<div class="section" id="id20">
-<h2>0.1.2<a class="headerlink" href="#id20" title="Permalink to this headline">¶</a></h2>
-<div class="section" id="id21">
-<h3>Tree<a class="headerlink" href="#id21" title="Permalink to this headline">¶</a></h3>
-<ul class="simple">
-<li>Corrected problem with <tt class="docutils literal"><span class="pre">Tree.__div__</span></tt> not working with zero length files.
-Removed <tt class="docutils literal"><span class="pre">__len__</span></tt> override and replaced with size instead. Also made size
-cach properly. This is a breaking change.</li>
-</ul>
-</div>
-</div>
-<div class="section" id="id22">
-<h2>0.1.1<a class="headerlink" href="#id22" title="Permalink to this headline">¶</a></h2>
-<p>Fixed up some urls because I&#8217;m a moron</p>
-</div>
-<div class="section" id="id23">
-<h2>0.1.0<a class="headerlink" href="#id23" title="Permalink to this headline">¶</a></h2>
-<p>initial release</p>
-</div>
-</div>
-
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
- <h3><a href="index.html">Table Of Contents</a></h3>
- <ul>
-<li><a class="reference external" href="#">Changelog</a><ul>
-<li><a class="reference external" href="#beta-3">0.3.0 Beta 3</a></li>
-<li><a class="reference external" href="#beta-2">0.3.0 Beta 2</a></li>
-<li><a class="reference external" href="#beta-1">0.3.0 Beta 1</a><ul>
-<li><a class="reference external" href="#renamed-modules">Renamed Modules</a></li>
-<li><a class="reference external" href="#general">General</a></li>
-</ul>
-</li>
-<li><a class="reference external" href="#id1">0.2 Beta 2</a></li>
-<li><a class="reference external" href="#id2">0.2</a><ul>
-<li><a class="reference external" href="#id3">General</a></li>
-<li><a class="reference external" href="#item-iteration">Item Iteration</a></li>
-<li><a class="reference external" href="#objects-package">objects Package</a></li>
-<li><a class="reference external" href="#blob">Blob</a></li>
-<li><a class="reference external" href="#gitcommand">GitCommand</a></li>
-<li><a class="reference external" href="#commit">Commit</a></li>
-<li><a class="reference external" href="#config">Config</a></li>
-<li><a class="reference external" href="#diff">Diff</a></li>
-<li><a class="reference external" href="#diffing">Diffing</a></li>
-<li><a class="reference external" href="#index">Index</a></li>
-<li><a class="reference external" href="#referernces">Referernces</a></li>
-<li><a class="reference external" href="#repo">Repo</a></li>
-<li><a class="reference external" href="#remote">Remote</a></li>
-<li><a class="reference external" href="#test-framework">Test Framework</a></li>
-<li><a class="reference external" href="#tree">Tree</a></li>
-</ul>
-</li>
-<li><a class="reference external" href="#id4">0.1.6</a><ul>
-<li><a class="reference external" href="#id5">General</a></li>
-<li><a class="reference external" href="#id6">Commit</a></li>
-<li><a class="reference external" href="#id7">Diff</a></li>
-<li><a class="reference external" href="#head">Head</a></li>
-<li><a class="reference external" href="#id8">Repo</a></li>
-</ul>
-</li>
-<li><a class="reference external" href="#id9">0.1.5</a><ul>
-<li><a class="reference external" href="#id10">General</a></li>
-<li><a class="reference external" href="#id11">Blob</a></li>
-<li><a class="reference external" href="#id12">Commit</a></li>
-<li><a class="reference external" href="#id13">Repo</a></li>
-<li><a class="reference external" href="#id14">Tree</a></li>
-</ul>
-</li>
-<li><a class="reference external" href="#id15">0.1.4.1</a></li>
-<li><a class="reference external" href="#id16">0.1.4</a><ul>
-<li><a class="reference external" href="#id17">Commit</a></li>
-<li><a class="reference external" href="#git">Git</a></li>
-<li><a class="reference external" href="#id18">Tree</a></li>
-<li><a class="reference external" href="#id19">Repo</a></li>
-</ul>
-</li>
-<li><a class="reference external" href="#id20">0.1.2</a><ul>
-<li><a class="reference external" href="#id21">Tree</a></li>
-</ul>
-</li>
-<li><a class="reference external" href="#id22">0.1.1</a></li>
-<li><a class="reference external" href="#id23">0.1.0</a></li>
-</ul>
-</li>
-</ul>
-
- <h4>Previous topic</h4>
- <p class="topless"><a href="roadmap.html"
- title="previous chapter">Roadmap</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/changes.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
- <div id="searchbox" style="display: none">
- <h3>Quick search</h3>
- <form class="search" action="search.html" method="get">
- <input type="text" name="q" size="18" />
- <input type="submit" value="Go" />
- <input type="hidden" name="check_keywords" value="yes" />
- <input type="hidden" name="area" value="default" />
- </form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
- </div>
- <script type="text/javascript">$('#searchbox').show(0);</script>
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- >modules</a> |</li>
- <li class="right" >
- <a href="roadmap.html" title="Roadmap"
- >previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- </body>
-</html> \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/docs_0.3.0.zip b/doc/doc_index/0.3.0/docs_0.3.0.zip
deleted file mode 100644
index 53decb18..00000000
--- a/doc/doc_index/0.3.0/docs_0.3.0.zip
+++ /dev/null
Binary files differ
diff --git a/doc/doc_index/0.3.0/genindex.html b/doc/doc_index/0.3.0/genindex.html
deleted file mode 100644
index f9ff33bc..00000000
--- a/doc/doc_index/0.3.0/genindex.html
+++ /dev/null
@@ -1,607 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Index &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="index.html" />
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="#" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
-
- <h1 id="index">Index</h1>
-
- <a href="#A"><strong>A</strong></a> | <a href="#B"><strong>B</strong></a> | <a href="#C"><strong>C</strong></a> | <a href="#D"><strong>D</strong></a> | <a href="#E"><strong>E</strong></a> | <a href="#F"><strong>F</strong></a> | <a href="#G"><strong>G</strong></a> | <a href="#H"><strong>H</strong></a> | <a href="#I"><strong>I</strong></a> | <a href="#J"><strong>J</strong></a> | <a href="#L"><strong>L</strong></a> | <a href="#M"><strong>M</strong></a> | <a href="#N"><strong>N</strong></a> | <a href="#O"><strong>O</strong></a> | <a href="#P"><strong>P</strong></a> | <a href="#R"><strong>R</strong></a> | <a href="#S"><strong>S</strong></a> | <a href="#T"><strong>T</strong></a> | <a href="#U"><strong>U</strong></a> | <a href="#V"><strong>V</strong></a> | <a href="#W"><strong>W</strong></a>
-
- <hr />
-
-
-<h2 id="A">A</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.diff.Diff.a_blob">a_blob (git.diff.Diff attribute)</a></dt>
-<dt><a href="reference.html#git.diff.Diff.a_mode">a_mode (git.diff.Diff attribute)</a></dt>
-<dt><a href="reference.html#git.objects.base.IndexObject.abspath">abspath (git.objects.base.IndexObject attribute)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.active_branch">active_branch (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.add">add() (git.index.base.IndexFile method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.objects.tree.TreeModifier.add">(git.objects.tree.TreeModifier method)</a></dt>
- <dt><a href="reference.html#git.remote.Remote.add">(git.remote.Remote class method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.objects.tree.TreeModifier.add_unchecked">add_unchecked() (git.objects.tree.TreeModifier method)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.repo.base.Repo.alternates">alternates (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.objects.util.altz_to_utctz_str">altz_to_utctz_str() (in module git.objects.util)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.archive">archive() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.AutoInterrupt.args">args (git.cmd.Git.AutoInterrupt attribute)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.author">author (git.objects.commit.Commit attribute)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.author_tz_offset">author_tz_offset (git.objects.commit.Commit attribute)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.authored_date">authored_date (git.objects.commit.Commit attribute)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="B">B</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.diff.Diff.b_blob">b_blob (git.diff.Diff attribute)</a></dt>
-<dt><a href="reference.html#git.diff.Diff.b_mode">b_mode (git.diff.Diff attribute)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.bare">bare (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.index.typ.BaseIndexEntry">BaseIndexEntry (class in git.index.typ)</a></dt>
-<dt><a href="reference.html#git.index.typ.BaseIndexEntry.binsha">binsha (git.index.typ.BaseIndexEntry attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.objects.base.Object.binsha">(git.objects.base.Object attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.repo.base.Repo.blame">blame() (git.repo.base.Repo method)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.objects.blob.Blob">Blob (class in git.objects.blob)</a></dt>
-<dt><a href="reference.html#git.index.typ.BlobFilter">BlobFilter (class in git.index.typ)</a></dt>
-<dt><a href="reference.html#git.objects.tree.Tree.blobs">blobs (git.objects.tree.Tree attribute)</a></dt>
-<dt><a href="reference.html#git.util.BlockingLockFile">BlockingLockFile (class in git.util)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.branches">branches (git.repo.base.Repo attribute)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="C">C</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.objects.tree.Tree.cache">cache (git.objects.tree.Tree attribute)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.cat_file_all">cat_file_all (git.cmd.Git attribute)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.cat_file_header">cat_file_header (git.cmd.Git attribute)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.checkout">checkout() (git.index.base.IndexFile method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.Head.checkout">(git.refs.Head method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.index.base.CheckoutError">CheckoutError</a></dt>
-<dt><a href="reference.html#git.cmd.Git.clear_cache">clear_cache() (git.cmd.Git method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.clone">clone() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.clone_from">clone_from() (git.repo.base.Repo class method)</a></dt>
-<dt><a href="reference.html#git.util.IndexFileSHA1Writer.close">close() (git.util.IndexFileSHA1Writer method)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit">Commit (class in git.objects.commit)</a></dt>
-<dt><a href="reference.html#git.refs.SymbolicReference.commit">commit (git.refs.SymbolicReference attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.TagReference.commit">(git.refs.TagReference attribute)</a></dt>
- <dt><a href="reference.html#git.remote.FetchInfo.commit">(git.remote.FetchInfo attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.index.base.IndexFile.commit">commit() (git.index.base.IndexFile method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.repo.base.Repo.commit">(git.repo.base.Repo method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.objects.commit.Commit.committed_date">committed_date (git.objects.commit.Commit attribute)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.committer">committer (git.objects.commit.Commit attribute)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.objects.commit.Commit.committer_tz_offset">committer_tz_offset (git.objects.commit.Commit attribute)</a></dt>
-<dt><a href="reference.html#git.remote.Remote.config_reader">config_reader (git.remote.Remote attribute)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.config_reader">config_reader() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.remote.Remote.config_writer">config_writer (git.remote.Remote attribute)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.config_writer">config_writer() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.count">count() (git.objects.commit.Commit method)</a></dt>
-<dt><a href="reference.html#git.refs.Head.create">create() (git.refs.Head class method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.Reference.create">(git.refs.Reference class method)</a></dt>
- <dt><a href="reference.html#git.refs.SymbolicReference.create">(git.refs.SymbolicReference class method)</a></dt>
- <dt><a href="reference.html#git.refs.TagReference.create">(git.refs.TagReference class method)</a></dt>
- <dt><a href="reference.html#git.remote.Remote.create">(git.remote.Remote class method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.objects.commit.Commit.create_from_tree">create_from_tree() (git.objects.commit.Commit class method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.create_head">create_head() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.create_remote">create_remote() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.create_tag">create_tag() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.index.typ.IndexEntry.ctime">ctime (git.index.typ.IndexEntry attribute)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="D">D</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.repo.base.Repo.daemon_export">daemon_export (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.objects.base.Object.data_stream">data_stream (git.objects.base.Object attribute)</a></dt>
-<dt><a href="reference.html#git.index.util.default_index">default_index() (in module git.index.util)</a></dt>
-<dt><a href="reference.html#git.refs.Head.delete">delete() (git.refs.Head class method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.RemoteReference.delete">(git.refs.RemoteReference class method)</a></dt>
- <dt><a href="reference.html#git.refs.SymbolicReference.delete">(git.refs.SymbolicReference class method)</a></dt>
- <dt><a href="reference.html#git.refs.TagReference.delete">(git.refs.TagReference class method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.repo.base.Repo.delete_head">delete_head() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.delete_remote">delete_remote() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.delete_tag">delete_tag() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.diff.Diff.deleted_file">deleted_file (git.diff.Diff attribute)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.refs.SymbolicReference.dereference_recursive">dereference_recursive() (git.refs.SymbolicReference class method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.description">description (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.index.typ.IndexEntry.dev">dev (git.index.typ.IndexEntry attribute)</a></dt>
-<dt><a href="reference.html#git.diff.Diff">Diff (class in git.diff)</a></dt>
-<dt><a href="reference.html#git.diff.Diff.diff">diff (git.diff.Diff attribute)</a></dt>
-<dt><a href="reference.html#git.diff.Diffable.diff">diff() (git.diff.Diffable method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.index.base.IndexFile.diff">(git.index.base.IndexFile method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.diff.Diffable">Diffable (class in git.diff)</a></dt>
-<dt><a href="reference.html#git.diff.Diffable.Index">Diffable.Index (class in git.diff)</a></dt>
-<dt><a href="reference.html#git.diff.DiffIndex">DiffIndex (class in git.diff)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="E">E</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.objects.commit.Commit.encoding">encoding (git.objects.commit.Commit attribute)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.entries">entries (git.index.base.IndexFile attribute)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.entry_key">entry_key() (git.index.base.IndexFile class method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.index.fun.entry_key">(in module git.index.fun)</a></dt>
- </dl></dd></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.cmd.Git.execute">execute() (git.cmd.Git method)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="F">F</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.util.IndexFileSHA1Writer.f">f (git.util.IndexFileSHA1Writer attribute)</a></dt>
-<dt><a href="reference.html#git.remote.Remote.fetch">fetch() (git.remote.Remote method)</a></dt>
-<dt><a href="reference.html#git.remote.FetchInfo">FetchInfo (class in git.remote)</a></dt>
-<dt><a href="reference.html#git.index.util.TemporaryFileSwap.file_path">file_path (git.index.util.TemporaryFileSwap attribute)</a></dt>
-<dt><a href="reference.html#git.util.Stats.files">files (git.util.Stats attribute)</a></dt>
-<dt><a href="reference.html#git.index.typ.BaseIndexEntry.flags">flags (git.index.typ.BaseIndexEntry attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.remote.FetchInfo.flags">(git.remote.FetchInfo attribute)</a></dt>
- <dt><a href="reference.html#git.remote.PushInfo.flags">(git.remote.PushInfo attribute)</a></dt>
- </dl></dd></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.index.typ.IndexEntry.from_base">from_base() (git.index.typ.IndexEntry class method)</a></dt>
-<dt><a href="reference.html#git.index.typ.BaseIndexEntry.from_blob">from_blob() (git.index.typ.BaseIndexEntry class method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.index.typ.IndexEntry.from_blob">(git.index.typ.IndexEntry class method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.refs.SymbolicReference.from_path">from_path() (git.refs.SymbolicReference class method)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.from_tree">from_tree() (git.index.base.IndexFile class method)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="G">G</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.cmd.Git.get_object_data">get_object_data() (git.cmd.Git method)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.get_object_header">get_object_header() (git.cmd.Git method)</a></dt>
-<dt><a href="reference.html#git.objects.util.get_object_type_by_name">get_object_type_by_name() (in module git.objects.util)</a></dt>
-<dt><a href="reference.html#git.objects.util.get_user_id">get_user_id() (in module git.objects.util)</a></dt>
-<dt><a href="reference.html#git.index.typ.IndexEntry.gid">gid (git.index.typ.IndexEntry attribute)</a></dt>
-<dt><a href="reference.html#git.cmd.Git">Git (class in git.cmd)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.git">git (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.AutoInterrupt">Git.AutoInterrupt (class in git.cmd)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.CatFileContentStream">Git.CatFileContentStream (class in git.cmd)</a></dt>
-<dt><a href="reference.html#module-git.cmd">git.cmd (module)</a></dt>
-<dt><a href="reference.html#module-git.config">git.config (module)</a></dt>
-<dt><a href="reference.html#module-git.diff">git.diff (module)</a></dt>
-<dt><a href="reference.html#module-git.errors">git.errors (module)</a></dt>
-<dt><a href="reference.html#module-git.index.base">git.index.base (module)</a></dt>
-<dt><a href="reference.html#module-git.index.fun">git.index.fun (module)</a></dt>
-<dt><a href="reference.html#module-git.index.typ">git.index.typ (module)</a></dt>
-<dt><a href="reference.html#module-git.index.util">git.index.util (module)</a></dt>
-<dt><a href="reference.html#module-git.objects.base">git.objects.base (module)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#module-git.objects.blob">git.objects.blob (module)</a></dt>
-<dt><a href="reference.html#module-git.objects.commit">git.objects.commit (module)</a></dt>
-<dt><a href="reference.html#module-git.objects.fun">git.objects.fun (module)</a></dt>
-<dt><a href="reference.html#module-git.objects.submodule">git.objects.submodule (module)</a></dt>
-<dt><a href="reference.html#module-git.objects.tag">git.objects.tag (module)</a></dt>
-<dt><a href="reference.html#module-git.objects.tree">git.objects.tree (module)</a></dt>
-<dt><a href="reference.html#module-git.objects.util">git.objects.util (module)</a></dt>
-<dt><a href="reference.html#module-git.refs">git.refs (module)</a></dt>
-<dt><a href="reference.html#module-git.remote">git.remote (module)</a></dt>
-<dt><a href="reference.html#module-git.repo.base">git.repo.base (module)</a></dt>
-<dt><a href="reference.html#module-git.repo.fun">git.repo.fun (module)</a></dt>
-<dt><a href="reference.html#module-git.util">git.util (module)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.git_dir">git_dir (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.index.util.git_working_dir">git_working_dir() (in module git.index.util)</a></dt>
-<dt><a href="reference.html#git.errors.GitCommandError">GitCommandError</a></dt>
-<dt><a href="reference.html#git.config.GitConfigParser">GitConfigParser (in module git.config)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="H">H</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.refs.HEAD">HEAD (class in git.refs)</a></dt>
-<dt><a href="reference.html#git.refs.Head">Head (class in git.refs)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.head">head (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.heads">heads (git.repo.base.Repo attribute)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.index.typ.BaseIndexEntry.hexsha">hexsha (git.index.typ.BaseIndexEntry attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.objects.base.Object.hexsha">(git.objects.base.Object attribute)</a></dt>
- </dl></dd>
-</dl></td></tr></table>
-
-<h2 id="I">I</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.repo.base.Repo.index">index (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.index.typ.IndexEntry">IndexEntry (class in git.index.typ)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile">IndexFile (class in git.index.base)</a></dt>
-<dt><a href="reference.html#git.util.IndexFileSHA1Writer">IndexFileSHA1Writer (class in git.util)</a></dt>
-<dt><a href="reference.html#git.objects.base.IndexObject">IndexObject (class in git.objects.base)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.init">init() (git.repo.base.Repo class method)</a></dt>
-<dt><a href="reference.html#git.index.typ.IndexEntry.inode">inode (git.index.typ.IndexEntry attribute)</a></dt>
-<dt><a href="reference.html#git.errors.InvalidGitRepositoryError">InvalidGitRepositoryError</a></dt>
-<dt><a href="reference.html#git.refs.SymbolicReference.is_detached">is_detached (git.refs.SymbolicReference attribute)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.is_dirty">is_dirty() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.repo.fun.is_git_dir">is_git_dir() (in module git.repo.fun)</a></dt>
-<dt><a href="reference.html#git.refs.SymbolicReference.is_valid">is_valid() (git.refs.SymbolicReference method)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.iter_blobs">iter_blobs() (git.index.base.IndexFile method)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.diff.DiffIndex.iter_change_type">iter_change_type() (git.diff.DiffIndex method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.iter_commits">iter_commits() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.iter_items">iter_items() (git.objects.commit.Commit class method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.Reference.iter_items">(git.refs.Reference class method)</a></dt>
- <dt><a href="reference.html#git.refs.SymbolicReference.iter_items">(git.refs.SymbolicReference class method)</a></dt>
- <dt><a href="reference.html#git.remote.Remote.iter_items">(git.remote.Remote class method)</a></dt>
- <dt><a href="reference.html#git.util.Iterable.iter_items">(git.util.Iterable class method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.objects.commit.Commit.iter_parents">iter_parents() (git.objects.commit.Commit method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.iter_trees">iter_trees() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.util.Iterable">Iterable (class in git.util)</a></dt>
-<dt><a href="reference.html#git.util.IterableList">IterableList (class in git.util)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="J">J</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.util.join_path">join_path() (in module git.util)</a></dt>
-<dt><a href="reference.html#git.util.join_path_native">join_path_native() (in module git.util)</a></dt></dl></td><td width="33%" valign="top"><dl>
-</dl></td></tr></table>
-
-<h2 id="L">L</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.remote.RemoteProgress.line_dropped">line_dropped() (git.remote.RemoteProgress method)</a></dt>
-<dt><a href="reference.html#git.util.Iterable.list_items">list_items() (git.util.Iterable class method)</a></dt>
-<dt><a href="reference.html#git.remote.PushInfo.local_ref">local_ref (git.remote.PushInfo attribute)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.util.LockFile">LockFile (class in git.util)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="M">M</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.index.base.IndexFile.merge_tree">merge_tree() (git.index.base.IndexFile method)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.message">message (git.objects.commit.Commit attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.objects.tag.TagObject.message">(git.objects.tag.TagObject attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.objects.blob.Blob.mime_type">mime_type (git.objects.blob.Blob attribute)</a></dt>
-<dt><a href="reference.html#git.index.typ.BaseIndexEntry.mode">mode (git.index.typ.BaseIndexEntry attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.objects.base.IndexObject.mode">(git.objects.base.IndexObject attribute)</a></dt>
- </dl></dd></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.index.base.IndexFile.move">move() (git.index.base.IndexFile method)</a></dt>
-<dt><a href="reference.html#git.index.typ.IndexEntry.mtime">mtime (git.index.typ.IndexEntry attribute)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="N">N</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.objects.base.IndexObject.name">name (git.objects.base.IndexObject attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.Reference.name">(git.refs.Reference attribute)</a></dt>
- <dt><a href="reference.html#git.refs.SymbolicReference.name">(git.refs.SymbolicReference attribute)</a></dt>
- <dt><a href="reference.html#git.remote.FetchInfo.name">(git.remote.FetchInfo attribute)</a></dt>
- <dt><a href="reference.html#git.remote.Remote.name">(git.remote.Remote attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.objects.commit.Commit.name_rev">name_rev (git.objects.commit.Commit attribute)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.new">new() (git.index.base.IndexFile class method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.objects.base.Object.new">(git.objects.base.Object class method)</a></dt>
- </dl></dd></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.diff.Diff.new_file">new_file (git.diff.Diff attribute)</a></dt>
-<dt><a href="reference.html#git.objects.base.Object.new_from_sha">new_from_sha() (git.objects.base.Object class method)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.CatFileContentStream.next">next() (git.cmd.Git.CatFileContentStream method)</a></dt>
-<dt><a href="reference.html#git.errors.NoSuchPathError">NoSuchPathError</a></dt>
-<dt><a href="reference.html#git.remote.FetchInfo.note">note (git.remote.FetchInfo attribute)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="O">O</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.objects.base.Object">Object (class in git.objects.base)</a></dt>
-<dt><a href="reference.html#git.objects.tag.TagObject.object">object (git.objects.tag.TagObject attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.Reference.object">(git.refs.Reference attribute)</a></dt>
- <dt><a href="reference.html#git.refs.TagReference.object">(git.refs.TagReference attribute)</a></dt>
- </dl></dd></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.repo.base.Repo.odb">odb (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.remote.FetchInfo.old_commit">old_commit (git.remote.FetchInfo attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.remote.PushInfo.old_commit">(git.remote.PushInfo attribute)</a></dt>
- </dl></dd>
-</dl></td></tr></table>
-
-<h2 id="P">P</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.objects.commit.Commit.parents">parents (git.objects.commit.Commit attribute)</a></dt>
-<dt><a href="reference.html#git.objects.util.parse_actor_and_date">parse_actor_and_date() (in module git.objects.util)</a></dt>
-<dt><a href="reference.html#git.objects.util.parse_date">parse_date() (in module git.objects.util)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.path">path (git.index.base.IndexFile attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.index.typ.BaseIndexEntry.path">(git.index.typ.BaseIndexEntry attribute)</a></dt>
- <dt><a href="reference.html#git.objects.base.IndexObject.path">(git.objects.base.IndexObject attribute)</a></dt>
- <dt><a href="reference.html#git.refs.SymbolicReference.path">(git.refs.SymbolicReference attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.index.typ.BlobFilter.paths">paths (git.index.typ.BlobFilter attribute)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.index.util.post_clear_cache">post_clear_cache() (in module git.index.util)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.AutoInterrupt.proc">proc (git.cmd.Git.AutoInterrupt attribute)</a></dt>
-<dt><a href="reference.html#git.objects.util.ProcessStreamAdapter">ProcessStreamAdapter (class in git.objects.util)</a></dt>
-<dt><a href="reference.html#git.remote.Remote.pull">pull() (git.remote.Remote method)</a></dt>
-<dt><a href="reference.html#git.remote.Remote.push">push() (git.remote.Remote method)</a></dt>
-<dt><a href="reference.html#git.remote.PushInfo">PushInfo (class in git.remote)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="R">R</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.cmd.Git.CatFileContentStream.read">read() (git.cmd.Git.CatFileContentStream method)</a></dt>
-<dt><a href="reference.html#git.index.fun.read_cache">read_cache() (in module git.index.fun)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.CatFileContentStream.readline">readline() (git.cmd.Git.CatFileContentStream method)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.CatFileContentStream.readlines">readlines() (git.cmd.Git.CatFileContentStream method)</a></dt>
-<dt><a href="reference.html#git.refs.SymbolicReference.ref">ref (git.refs.SymbolicReference attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.remote.FetchInfo.ref">(git.remote.FetchInfo attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.refs.Reference">Reference (class in git.refs)</a></dt>
-<dt><a href="reference.html#git.refs.SymbolicReference.reference">reference (git.refs.SymbolicReference attribute)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.references">references (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.remote.Remote.refs">refs (git.remote.Remote attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.repo.base.Repo.refs">(git.repo.base.Repo attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.remote.Remote">Remote (class in git.remote)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.remote">remote() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.refs.RemoteReference.remote_head">remote_head (git.refs.RemoteReference attribute)</a></dt>
-<dt><a href="reference.html#git.refs.RemoteReference.remote_name">remote_name (git.refs.RemoteReference attribute)</a></dt>
-<dt><a href="reference.html#git.remote.PushInfo.remote_ref">remote_ref (git.remote.PushInfo attribute)</a></dt>
-<dt><a href="reference.html#git.remote.PushInfo.remote_ref_string">remote_ref_string (git.remote.PushInfo attribute)</a></dt>
-<dt><a href="reference.html#git.remote.RemoteProgress">RemoteProgress (class in git.remote)</a></dt>
-<dt><a href="reference.html#git.refs.RemoteReference">RemoteReference (class in git.refs)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.remotes">remotes (git.repo.base.Repo attribute)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.index.base.IndexFile.remove">remove() (git.index.base.IndexFile method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.remote.Remote.remove">(git.remote.Remote class method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.refs.Head.rename">rename() (git.refs.Head method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.SymbolicReference.rename">(git.refs.SymbolicReference method)</a></dt>
- <dt><a href="reference.html#git.remote.Remote.rename">(git.remote.Remote method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.diff.Diff.rename_from">rename_from (git.diff.Diff attribute)</a></dt>
-<dt><a href="reference.html#git.diff.Diff.rename_to">rename_to (git.diff.Diff attribute)</a></dt>
-<dt><a href="reference.html#git.diff.Diff.renamed">renamed (git.diff.Diff attribute)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo">Repo (class in git.repo.base)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.repo">repo (git.index.base.IndexFile attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.objects.base.Object.repo">(git.objects.base.Object attribute)</a></dt>
- <dt><a href="reference.html#git.refs.SymbolicReference.repo">(git.refs.SymbolicReference attribute)</a></dt>
- <dt><a href="reference.html#git.remote.Remote.repo">(git.remote.Remote attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.index.base.IndexFile.reset">reset() (git.index.base.IndexFile method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.HEAD.reset">(git.refs.HEAD method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.index.base.IndexFile.resolve_blobs">resolve_blobs() (git.index.base.IndexFile method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.rev_parse">rev_parse() (git.repo.base.Repo method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.repo.fun.rev_parse">(in module git.repo.fun)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.remote.Remote.rm">rm() (git.remote.Remote class method)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="S">S</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.objects.tree.TreeModifier.set_done">set_done() (git.objects.tree.TreeModifier method)</a></dt>
-<dt><a href="reference.html#git.util.IndexFileSHA1Writer.sha1">sha1 (git.util.IndexFileSHA1Writer attribute)</a></dt>
-<dt><a href="reference.html#git.index.typ.IndexEntry.size">size (git.index.typ.IndexEntry attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.objects.base.Object.size">(git.objects.base.Object attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.index.typ.BaseIndexEntry.stage">stage (git.index.typ.BaseIndexEntry attribute)</a></dt>
-<dt><a href="reference.html#git.remote.Remote.stale_refs">stale_refs (git.remote.Remote attribute)</a></dt>
-<dt><a href="reference.html#git.index.fun.stat_mode_to_index_mode">stat_mode_to_index_mode() (in module git.index.fun)</a></dt>
-<dt><a href="reference.html#git.util.Stats">Stats (class in git.util)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.stats">stats (git.objects.commit.Commit attribute)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.util.stream_copy">stream_copy() (in module git.util)</a></dt>
-<dt><a href="reference.html#git.objects.base.Object.stream_data">stream_data() (git.objects.base.Object method)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.stream_object_data">stream_object_data() (git.cmd.Git method)</a></dt>
-<dt><a href="reference.html#git.objects.submodule.Submodule">Submodule (class in git.objects.submodule)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.summary">summary (git.objects.commit.Commit attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.remote.PushInfo.summary">(git.remote.PushInfo attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.refs.SymbolicReference">SymbolicReference (class in git.refs)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="T">T</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.objects.tag.TagObject.tag">tag (git.objects.tag.TagObject attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.refs.TagReference.tag">(git.refs.TagReference attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.refs.Tag">Tag (in module git.refs)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.tag">tag() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.objects.tag.TagObject.tagged_date">tagged_date (git.objects.tag.TagObject attribute)</a></dt>
-<dt><a href="reference.html#git.objects.tag.TagObject.tagger">tagger (git.objects.tag.TagObject attribute)</a></dt>
-<dt><a href="reference.html#git.objects.tag.TagObject.tagger_tz_offset">tagger_tz_offset (git.objects.tag.TagObject attribute)</a></dt>
-<dt><a href="reference.html#git.objects.tag.TagObject">TagObject (class in git.objects.tag)</a></dt>
-<dt><a href="reference.html#git.refs.TagReference">TagReference (class in git.refs)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.tags">tags (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.util.IndexFileSHA1Writer.tell">tell() (git.util.IndexFileSHA1Writer method)</a></dt>
-<dt><a href="reference.html#git.index.util.TemporaryFileSwap">TemporaryFileSwap (class in git.index.util)</a></dt>
-<dt><a href="reference.html#git.index.util.TemporaryFileSwap.tmp_file_path">tmp_file_path (git.index.util.TemporaryFileSwap attribute)</a></dt>
-<dt><a href="reference.html#git.index.typ.BaseIndexEntry.to_blob">to_blob() (git.index.typ.BaseIndexEntry method)</a></dt>
-<dt><a href="reference.html#git.refs.SymbolicReference.to_full_path">to_full_path() (git.refs.SymbolicReference class method)</a></dt>
-<dt><a href="reference.html#git.util.to_native_path_linux">to_native_path_linux() (in module git.util)</a></dt>
-<dt><a href="reference.html#git.util.to_native_path_windows">to_native_path_windows() (in module git.util)</a></dt></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.util.Stats.total">total (git.util.Stats attribute)</a></dt>
-<dt><a href="reference.html#git.repo.fun.touch">touch() (in module git.repo.fun)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.transform_kwargs">transform_kwargs() (git.cmd.Git method)</a></dt>
-<dt><a href="reference.html#git.objects.util.Traversable">Traversable (class in git.objects.util)</a></dt>
-<dt><a href="reference.html#git.objects.tree.Tree.traverse">traverse() (git.objects.tree.Tree method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.objects.util.Traversable.traverse">(git.objects.util.Traversable method)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.objects.fun.traverse_tree_recursive">traverse_tree_recursive() (in module git.objects.fun)</a></dt>
-<dt><a href="reference.html#git.objects.fun.traverse_trees_recursive">traverse_trees_recursive() (in module git.objects.fun)</a></dt>
-<dt><a href="reference.html#git.objects.tree.Tree">Tree (class in git.objects.tree)</a></dt>
-<dt><a href="reference.html#git.objects.commit.Commit.tree">tree (git.objects.commit.Commit attribute)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.tree">tree() (git.repo.base.Repo method)</a></dt>
-<dt><a href="reference.html#git.objects.fun.tree_entries_from_data">tree_entries_from_data() (in module git.objects.fun)</a></dt>
-<dt><a href="reference.html#git.objects.fun.tree_to_stream">tree_to_stream() (in module git.objects.fun)</a></dt>
-<dt><a href="reference.html#git.objects.tree.TreeModifier">TreeModifier (class in git.objects.tree)</a></dt>
-<dt><a href="reference.html#git.objects.tree.Tree.trees">trees (git.objects.tree.Tree attribute)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="U">U</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.index.typ.IndexEntry.uid">uid (git.index.typ.IndexEntry attribute)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.unmerged_blobs">unmerged_blobs() (git.index.base.IndexFile method)</a></dt>
-<dt><a href="reference.html#git.repo.base.Repo.untracked_files">untracked_files (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.update">update() (git.index.base.IndexFile method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.remote.Remote.update">(git.remote.Remote method)</a></dt>
- <dt><a href="reference.html#git.remote.RemoteProgress.update">(git.remote.RemoteProgress method)</a></dt>
- </dl></dd></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.objects.util.utctz_to_altz">utctz_to_altz() (in module git.objects.util)</a></dt>
-</dl></td></tr></table>
-
-<h2 id="V">V</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.objects.util.verify_utctz">verify_utctz() (in module git.objects.util)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.version">version (git.index.base.IndexFile attribute)</a></dt></dl></td><td width="33%" valign="top"><dl>
-</dl></td></tr></table>
-
-<h2 id="W">W</h2>
-<table width="100%" class="indextable"><tr><td width="33%" valign="top">
-<dl>
-
-<dt><a href="reference.html#git.cmd.Git.AutoInterrupt.wait">wait() (git.cmd.Git.AutoInterrupt method)</a></dt>
-<dt><a href="reference.html#git.cmd.Git.working_dir">working_dir (git.cmd.Git attribute)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.repo.base.Repo.working_dir">(git.repo.base.Repo attribute)</a></dt>
- </dl></dd>
-<dt><a href="reference.html#git.repo.base.Repo.working_tree_dir">working_tree_dir (git.repo.base.Repo attribute)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.write">write() (git.index.base.IndexFile method)</a></dt>
- <dd><dl>
- <dt><a href="reference.html#git.util.IndexFileSHA1Writer.write">(git.util.IndexFileSHA1Writer method)</a></dt>
- </dl></dd></dl></td><td width="33%" valign="top"><dl>
-<dt><a href="reference.html#git.index.fun.write_cache">write_cache() (in module git.index.fun)</a></dt>
-<dt><a href="reference.html#git.util.IndexFileSHA1Writer.write_sha">write_sha() (git.util.IndexFileSHA1Writer method)</a></dt>
-<dt><a href="reference.html#git.index.base.IndexFile.write_tree">write_tree() (git.index.base.IndexFile method)</a></dt>
-<dt><a href="reference.html#git.index.fun.write_tree_from_cache">write_tree_from_cache() (in module git.index.fun)</a></dt>
-</dl></td></tr></table>
-
-
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
-
-
-
- <div id="searchbox" style="display: none">
- <h3>Quick search</h3>
- <form class="search" action="search.html" method="get">
- <input type="text" name="q" size="18" />
- <input type="submit" value="Go" />
- <input type="hidden" name="check_keywords" value="yes" />
- <input type="hidden" name="area" value="default" />
- </form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
- </div>
- <script type="text/javascript">$('#searchbox').show(0);</script>
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="#" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- >modules</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- </body>
-</html> \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/index.html b/doc/doc_index/0.3.0/index.html
deleted file mode 100644
index f4455766..00000000
--- a/doc/doc_index/0.3.0/index.html
+++ /dev/null
@@ -1,198 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>GitPython Documentation &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="#" />
- <link rel="next" title="Overview / Install" href="intro.html" />
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li class="right" >
- <a href="intro.html" title="Overview / Install"
- accesskey="N">next</a> |</li>
- <li><a href="#">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
- <div class="section" id="gitpython-documentation">
-<h1>GitPython Documentation<a class="headerlink" href="#gitpython-documentation" title="Permalink to this headline">¶</a></h1>
-<ul>
-<li class="toctree-l1"><a class="reference external" href="intro.html">Overview / Install</a><ul>
-<li class="toctree-l2"><a class="reference external" href="intro.html#requirements">Requirements</a></li>
-<li class="toctree-l2"><a class="reference external" href="intro.html#installing-gitpython">Installing GitPython</a></li>
-<li class="toctree-l2"><a class="reference external" href="intro.html#getting-started">Getting Started</a></li>
-<li class="toctree-l2"><a class="reference external" href="intro.html#api-reference">API Reference</a></li>
-<li class="toctree-l2"><a class="reference external" href="intro.html#source-code">Source Code</a></li>
-<li class="toctree-l2"><a class="reference external" href="intro.html#mailing-list">Mailing List</a></li>
-<li class="toctree-l2"><a class="reference external" href="intro.html#issue-tracker">Issue Tracker</a></li>
-<li class="toctree-l2"><a class="reference external" href="intro.html#license-information">License Information</a></li>
-</ul>
-</li>
-<li class="toctree-l1"><a class="reference external" href="whatsnew.html">Whats New in 0.3</a><ul>
-<li class="toctree-l2"><a class="reference external" href="whatsnew.html#object-databases">Object Databases</a></li>
-<li class="toctree-l2"><a class="reference external" href="whatsnew.html#reduced-memory-footprint">Reduced Memory Footprint</a></li>
-</ul>
-</li>
-<li class="toctree-l1"><a class="reference external" href="whatsnew.html#upgrading-from-0-2">Upgrading from 0.2</a><ul>
-<li class="toctree-l2"><a class="reference external" href="whatsnew.html#why-you-should-not-upgrade">Why you should not upgrade</a></li>
-<li class="toctree-l2"><a class="reference external" href="whatsnew.html#why-you-should-upgrade">Why you should upgrade</a></li>
-<li class="toctree-l2"><a class="reference external" href="whatsnew.html#guided-upgrade">Guided Upgrade</a></li>
-</ul>
-</li>
-<li class="toctree-l1"><a class="reference external" href="tutorial.html">GitPython Tutorial</a><ul>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#initialize-a-repo-object">Initialize a Repo object</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#object-databases">Object Databases</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#examining-references">Examining References</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#modifying-references">Modifying References</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#understanding-objects">Understanding Objects</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#the-commit-object">The Commit object</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#the-tree-object">The Tree object</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#the-index-object">The Index Object</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#handling-remotes">Handling Remotes</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#obtaining-diff-information">Obtaining Diff Information</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#switching-branches">Switching Branches</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#using-git-directly">Using git directly</a></li>
-<li class="toctree-l2"><a class="reference external" href="tutorial.html#and-even-more">And even more ...</a></li>
-</ul>
-</li>
-<li class="toctree-l1"><a class="reference external" href="reference.html">API Reference</a><ul>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.objects.base">Objects.Base</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.objects.blob">Objects.Blob</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.objects.commit">Objects.Commit</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.objects.tag">Objects.Tag</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.objects.tree">Objects.Tree</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.objects.fun">Objects.Functions</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.objects.submodule">Objects.Submodule</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.objects.util">Objects.Util</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.index.base">Index.Base</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.index.fun">Index.Functions</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.index.typ">Index.Types</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.index.util">Index.Util</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.cmd">GitCmd</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.config">Config</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.diff">Diff</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.errors">Errors</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.refs">Refs</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.remote">Remote</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.repo.base">Repo.Base</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.repo.fun">Repo.Functions</a></li>
-<li class="toctree-l2"><a class="reference external" href="reference.html#module-git.util">Util</a></li>
-</ul>
-</li>
-<li class="toctree-l1"><a class="reference external" href="roadmap.html">Roadmap</a></li>
-<li class="toctree-l1"><a class="reference external" href="changes.html">Changelog</a><ul>
-<li class="toctree-l2"><a class="reference external" href="changes.html#beta-3">0.3.0 Beta 3</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#beta-2">0.3.0 Beta 2</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#beta-1">0.3.0 Beta 1</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#id1">0.2 Beta 2</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#id2">0.2</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#id4">0.1.6</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#id9">0.1.5</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#id15">0.1.4.1</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#id16">0.1.4</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#id20">0.1.2</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#id22">0.1.1</a></li>
-<li class="toctree-l2"><a class="reference external" href="changes.html#id23">0.1.0</a></li>
-</ul>
-</li>
-</ul>
-</div>
-<div class="section" id="indices-and-tables">
-<h1>Indices and tables<a class="headerlink" href="#indices-and-tables" title="Permalink to this headline">¶</a></h1>
-<ul class="simple">
-<li><a class="reference external" href="genindex.html"><em>Index</em></a></li>
-<li><a class="reference external" href="modindex.html"><em>Module Index</em></a></li>
-<li><a class="reference external" href="search.html"><em>Search Page</em></a></li>
-</ul>
-</div>
-
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
- <h3><a href="#">Table Of Contents</a></h3>
- <ul>
-<li><a class="reference external" href="#">GitPython Documentation</a><ul>
-</ul>
-</li>
-<li><a class="reference external" href="#indices-and-tables">Indices and tables</a></li>
-</ul>
-
- <h4>Next topic</h4>
- <p class="topless"><a href="intro.html"
- title="next chapter">Overview / Install</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/index.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
- <div id="searchbox" style="display: none">
- <h3>Quick search</h3>
- <form class="search" action="search.html" method="get">
- <input type="text" name="q" size="18" />
- <input type="submit" value="Go" />
- <input type="hidden" name="check_keywords" value="yes" />
- <input type="hidden" name="area" value="default" />
- </form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
- </div>
- <script type="text/javascript">$('#searchbox').show(0);</script>
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- >modules</a> |</li>
- <li class="right" >
- <a href="intro.html" title="Overview / Install"
- >next</a> |</li>
- <li><a href="#">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- </body>
-</html> \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/intro.html b/doc/doc_index/0.3.0/intro.html
deleted file mode 100644
index 0ec68f56..00000000
--- a/doc/doc_index/0.3.0/intro.html
+++ /dev/null
@@ -1,227 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Overview / Install &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="index.html" />
- <link rel="next" title="Whats New in 0.3" href="whatsnew.html" />
- <link rel="prev" title="GitPython Documentation" href="index.html" />
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li class="right" >
- <a href="whatsnew.html" title="Whats New in 0.3"
- accesskey="N">next</a> |</li>
- <li class="right" >
- <a href="index.html" title="GitPython Documentation"
- accesskey="P">previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
- <div class="section" id="overview-install">
-<span id="intro-toplevel"></span><h1>Overview / Install<a class="headerlink" href="#overview-install" title="Permalink to this headline">¶</a></h1>
-<p>GitPython is a python library used to interact with git repositories, high-level like git-porcelain, or low-level like git-plumbing.</p>
-<p>It provides abstractions of git objects for easy access of repository data, and additionally allows you to access the git repository more directly using either a pure python implementation, or the faster, but more resource intensive git command implementation.</p>
-<p>The object database implementation is optimized for handling large quantities of objects and large datasets, which is achieved by using low-level structures and data streaming.</p>
-<div class="section" id="requirements">
-<h2>Requirements<a class="headerlink" href="#requirements" title="Permalink to this headline">¶</a></h2>
-<ul>
-<li><dl class="first docutils">
-<dt><a class="reference external" href="http://git-scm.com/">Git</a> 1.7.0 or newer</dt>
-<dd><p class="first last">It should also work with older versions, but it may be that some operations
-involving remotes will not work as expected.</p>
-</dd>
-</dl>
-</li>
-<li><p class="first"><a class="reference external" href="http://pypi.python.org/pypi/gitdb">GitDB</a> - a pure python git database implementation</p>
-</li>
-</ul>
-<blockquote>
-<ul class="simple">
-<li><a class="reference external" href="http://pypi.python.org/pypi/async">async</a> - asynchronous task scheduling</li>
-</ul>
-</blockquote>
-<ul class="simple">
-<li><a class="reference external" href="http://code.google.com/p/python-nose/">Python Nose</a> - used for running the tests</li>
-<li><a class="reference external" href="http://www.voidspace.org.uk/python/mock.html">Mock by Michael Foord</a> used for tests. Requires version 0.5</li>
-</ul>
-</div>
-<div class="section" id="installing-gitpython">
-<h2>Installing GitPython<a class="headerlink" href="#installing-gitpython" title="Permalink to this headline">¶</a></h2>
-<p>Installing GitPython is easily done using
-<a class="reference external" href="http://peak.telecommunity.com/DevCenter/setuptools">setuptools</a>. Assuming it is
-installed, just run the following from the command-line:</p>
-<div class="highlight-none"><div class="highlight"><pre># easy_install GitPython
-</pre></div>
-</div>
-<p>This command will download the latest version of GitPython from the
-<a class="reference external" href="http://pypi.python.org/pypi/GitPython">Python Package Index</a> and install it
-to your system. More information about <tt class="docutils literal"><span class="pre">easy_install</span></tt> and pypi can be found
-here:</p>
-<ul class="simple">
-<li><a class="reference external" href="http://peak.telecommunity.com/DevCenter/setuptools">setuptools</a></li>
-<li><a class="reference external" href="http://peak.telecommunity.com/DevCenter/EasyInstall#installation-instructions">install setuptools</a></li>
-<li><a class="reference external" href="http://pypi.python.org/pypi/SQLAlchemy">pypi</a></li>
-</ul>
-<p>Alternatively, you can install from the distribution using the <tt class="docutils literal"><span class="pre">setup.py</span></tt>
-script:</p>
-<div class="highlight-none"><div class="highlight"><pre># python setup.py install
-</pre></div>
-</div>
-<div class="admonition note">
-<p class="first admonition-title">Note</p>
-<p class="last">In this case, you have to manually install <a class="reference external" href="http://pypi.python.org/pypi/gitdb">GitDB</a> and <a class="reference external" href="http://pypi.python.org/pypi/async">async</a> as well. It would be recommended to use the <a class="reference internal" href="#source-code-label"><em>git source repository</em></a> in that case.</p>
-</div>
-</div>
-<div class="section" id="getting-started">
-<h2>Getting Started<a class="headerlink" href="#getting-started" title="Permalink to this headline">¶</a></h2>
-<ul class="simple">
-<li><a class="reference external" href="tutorial.html#tutorial-label"><em>GitPython Tutorial</em></a> - This tutorial provides a walk-through of some of
-the basic functionality and concepts used in GitPython. It, however, is not
-exhaustive so you are encouraged to spend some time in the
-<a class="reference external" href="reference.html#api-reference-toplevel"><em>API Reference</em></a>.</li>
-</ul>
-</div>
-<div class="section" id="api-reference">
-<h2>API Reference<a class="headerlink" href="#api-reference" title="Permalink to this headline">¶</a></h2>
-<p>An organized section of the GitPthon API is at <a class="reference external" href="reference.html#api-reference-toplevel"><em>API Reference</em></a>.</p>
-</div>
-<div class="section" id="source-code">
-<span id="source-code-label"></span><h2>Source Code<a class="headerlink" href="#source-code" title="Permalink to this headline">¶</a></h2>
-<p>GitPython&#8217;s git repo is available on Gitorious and GitHub, which can be browsed at:</p>
-<blockquote>
-<ul class="simple">
-<li><a class="reference external" href="http://gitorious.org/projects/git-python/">http://gitorious.org/projects/git-python/</a></li>
-<li><a class="reference external" href="http://github.com/Byron/GitPython">http://github.com/Byron/GitPython</a></li>
-</ul>
-</blockquote>
-<p>and cloned using:</p>
-<div class="highlight-python"><pre>$ git clone git://gitorious.org/git-python/mainline.git git-python
-$ git clone git://github.com/Byron/GitPython.git git-python</pre>
-</div>
-<p>Initialize all submodules to obtain the required dependencies with:</p>
-<div class="highlight-python"><pre>$ cd git-python
-$ git submodule update --init --recursive</pre>
-</div>
-<p>Finally verify the installation by running the <a class="reference external" href="http://code.google.com/p/python-nose/">nose powered</a> unit tests:</p>
-<div class="highlight-python"><pre>$ nosetests</pre>
-</div>
-</div>
-<div class="section" id="mailing-list">
-<h2>Mailing List<a class="headerlink" href="#mailing-list" title="Permalink to this headline">¶</a></h2>
-<p><a class="reference external" href="http://groups.google.com/group/git-python">http://groups.google.com/group/git-python</a></p>
-</div>
-<div class="section" id="issue-tracker">
-<h2>Issue Tracker<a class="headerlink" href="#issue-tracker" title="Permalink to this headline">¶</a></h2>
-<p><a class="reference external" href="http://byronimo.lighthouseapp.com/projects/51787-gitpython/milestones">http://byronimo.lighthouseapp.com/projects/51787-gitpython/milestones</a></p>
-</div>
-<div class="section" id="license-information">
-<h2>License Information<a class="headerlink" href="#license-information" title="Permalink to this headline">¶</a></h2>
-<p>GitPython is licensed under the New BSD License. See the LICENSE file for
-more information.</p>
-</div>
-</div>
-
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
- <h3><a href="index.html">Table Of Contents</a></h3>
- <ul>
-<li><a class="reference external" href="#">Overview / Install</a><ul>
-<li><a class="reference external" href="#requirements">Requirements</a></li>
-<li><a class="reference external" href="#installing-gitpython">Installing GitPython</a></li>
-<li><a class="reference external" href="#getting-started">Getting Started</a></li>
-<li><a class="reference external" href="#api-reference">API Reference</a></li>
-<li><a class="reference external" href="#source-code">Source Code</a></li>
-<li><a class="reference external" href="#mailing-list">Mailing List</a></li>
-<li><a class="reference external" href="#issue-tracker">Issue Tracker</a></li>
-<li><a class="reference external" href="#license-information">License Information</a></li>
-</ul>
-</li>
-</ul>
-
- <h4>Previous topic</h4>
- <p class="topless"><a href="index.html"
- title="previous chapter">GitPython Documentation</a></p>
- <h4>Next topic</h4>
- <p class="topless"><a href="whatsnew.html"
- title="next chapter">Whats New in 0.3</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/intro.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
- <div id="searchbox" style="display: none">
- <h3>Quick search</h3>
- <form class="search" action="search.html" method="get">
- <input type="text" name="q" size="18" />
- <input type="submit" value="Go" />
- <input type="hidden" name="check_keywords" value="yes" />
- <input type="hidden" name="area" value="default" />
- </form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
- </div>
- <script type="text/javascript">$('#searchbox').show(0);</script>
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- >modules</a> |</li>
- <li class="right" >
- <a href="whatsnew.html" title="Whats New in 0.3"
- >next</a> |</li>
- <li class="right" >
- <a href="index.html" title="GitPython Documentation"
- >previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- </body>
-</html> \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/modindex.html b/doc/doc_index/0.3.0/modindex.html
deleted file mode 100644
index 8e53657c..00000000
--- a/doc/doc_index/0.3.0/modindex.html
+++ /dev/null
@@ -1,184 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Global Module Index &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="index.html" />
-
-
-
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="#" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
-
- <h1 id="global-module-index">Global Module Index</h1>
- <a href="#cap-G"><strong>G</strong></a>
- <hr/>
-
- <table width="100%" class="indextable" cellspacing="0" cellpadding="2"><tr class="pcap"><td></td><td>&nbsp;</td><td></td></tr>
- <tr class="cap"><td></td><td><a name="cap-G"><strong>G</strong></a></td><td></td></tr><tr>
- <td><img src="_static/minus.png" id="toggle-1"
- class="toggler" style="display: none" alt="-" /></td>
- <td>
- <tt class="xref">git</tt></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.cmd"><tt class="xref">git.cmd</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.config"><tt class="xref">git.config</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.diff"><tt class="xref">git.diff</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.errors"><tt class="xref">git.errors</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.index.base"><tt class="xref">git.index.base</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.index.fun"><tt class="xref">git.index.fun</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.index.typ"><tt class="xref">git.index.typ</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.index.util"><tt class="xref">git.index.util</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.objects.base"><tt class="xref">git.objects.base</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.objects.blob"><tt class="xref">git.objects.blob</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.objects.commit"><tt class="xref">git.objects.commit</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.objects.fun"><tt class="xref">git.objects.fun</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.objects.submodule"><tt class="xref">git.objects.submodule</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.objects.tag"><tt class="xref">git.objects.tag</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.objects.tree"><tt class="xref">git.objects.tree</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.objects.util"><tt class="xref">git.objects.util</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.refs"><tt class="xref">git.refs</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.remote"><tt class="xref">git.remote</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.repo.base"><tt class="xref">git.repo.base</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.repo.fun"><tt class="xref">git.repo.fun</tt></a></td><td>
- <em></em></td></tr><tr class="cg-1">
- <td></td>
- <td>&nbsp;&nbsp;&nbsp;
- <a href="reference.html#module-git.util"><tt class="xref">git.util</tt></a></td><td>
- <em></em></td></tr>
- </table>
-
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
- <div id="searchbox" style="display: none">
- <h3>Quick search</h3>
- <form class="search" action="search.html" method="get">
- <input type="text" name="q" size="18" />
- <input type="submit" value="Go" />
- <input type="hidden" name="check_keywords" value="yes" />
- <input type="hidden" name="area" value="default" />
- </form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
- </div>
- <script type="text/javascript">$('#searchbox').show(0);</script>
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="#" title="Global Module Index"
- >modules</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- </body>
-</html> \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/objects.inv b/doc/doc_index/0.3.0/objects.inv
deleted file mode 100644
index 86174f03..00000000
--- a/doc/doc_index/0.3.0/objects.inv
+++ /dev/null
@@ -1,321 +0,0 @@
-# Sphinx inventory version 1
-# Project: GitPython
-# Version: 0.3.0-beta2
-git.objects.tree mod reference.html
-git.cmd mod reference.html
-git.diff mod reference.html
-git.errors mod reference.html
-git.config mod reference.html
-git.objects.tag mod reference.html
-git.objects.blob mod reference.html
-git.repo.base mod reference.html
-git.objects.submodule mod reference.html
-git.objects.fun mod reference.html
-git.util mod reference.html
-git.objects.base mod reference.html
-git.index.typ mod reference.html
-git.repo.fun mod reference.html
-git.objects.util mod reference.html
-git.objects.commit mod reference.html
-git.index.fun mod reference.html
-git.refs mod reference.html
-git.index.base mod reference.html
-git.index.util mod reference.html
-git.remote mod reference.html
-git.cmd.Git.AutoInterrupt.proc attribute reference.html
-git.cmd.Git.get_object_data method reference.html
-git.remote.Remote.create classmethod reference.html
-git.errors.InvalidGitRepositoryError exception reference.html
-git.refs.SymbolicReference.is_valid method reference.html
-git.refs.TagReference.tag attribute reference.html
-git.repo.base.Repo.tags attribute reference.html
-git.objects.commit.Commit.author_tz_offset attribute reference.html
-git.objects.base.IndexObject.abspath attribute reference.html
-git.refs.SymbolicReference.is_detached attribute reference.html
-git.remote.PushInfo class reference.html
-git.index.base.IndexFile.diff method reference.html
-git.util.Iterable class reference.html
-git.objects.base.Object.new classmethod reference.html
-git.repo.base.Repo.daemon_export attribute reference.html
-git.objects.tree.TreeModifier.add method reference.html
-git.util.LockFile class reference.html
-git.index.base.IndexFile.entry_key classmethod reference.html
-git.index.util.default_index function reference.html
-git.objects.tag.TagObject.message attribute reference.html
-git.objects.base.IndexObject.name attribute reference.html
-git.refs.Reference class reference.html
-git.util.to_native_path_linux function reference.html
-git.objects.blob.Blob.mime_type attribute reference.html
-git.objects.commit.Commit.committed_date attribute reference.html
-git.objects.base.Object.data_stream attribute reference.html
-git.objects.base.IndexObject.path attribute reference.html
-git.objects.base.Object.repo attribute reference.html
-git.objects.base.Object.hexsha attribute reference.html
-git.refs.RemoteReference.remote_head attribute reference.html
-git.repo.base.Repo.bare attribute reference.html
-git.index.fun.read_cache function reference.html
-git.diff.Diff class reference.html
-git.remote.Remote.repo attribute reference.html
-git.objects.commit.Commit.committer attribute reference.html
-git.index.typ.BaseIndexEntry.hexsha attribute reference.html
-git.objects.commit.Commit.message attribute reference.html
-git.objects.commit.Commit.encoding attribute reference.html
-git.diff.Diff.renamed attribute reference.html
-git.remote.RemoteProgress class reference.html
-git.repo.base.Repo.iter_commits method reference.html
-git.refs.TagReference.commit attribute reference.html
-git.remote.FetchInfo.flags attribute reference.html
-git.repo.base.Repo.description attribute reference.html
-git.repo.base.Repo.odb attribute reference.html
-git.remote.Remote.pull method reference.html
-git.repo.base.Repo.is_dirty method reference.html
-git.refs.SymbolicReference.commit attribute reference.html
-git.diff.Diff.b_mode attribute reference.html
-git.objects.base.Object class reference.html
-git.util.IndexFileSHA1Writer class reference.html
-git.objects.commit.Commit.author attribute reference.html
-git.refs.Reference.create classmethod reference.html
-git.refs.TagReference.delete classmethod reference.html
-git.util.IndexFileSHA1Writer.tell method reference.html
-git.diff.Diffable.Index class reference.html
-git.objects.commit.Commit.count method reference.html
-git.objects.base.Object.new_from_sha classmethod reference.html
-git.refs.SymbolicReference.repo attribute reference.html
-git.objects.commit.Commit.tree attribute reference.html
-git.cmd.Git.CatFileContentStream.readlines method reference.html
-git.index.fun.write_tree_from_cache function reference.html
-git.config.GitConfigParser attribute reference.html
-git.refs.SymbolicReference.create classmethod reference.html
-git.repo.base.Repo.untracked_files attribute reference.html
-git.remote.Remote.name attribute reference.html
-git.remote.PushInfo.local_ref attribute reference.html
-git.index.typ.BaseIndexEntry class reference.html
-git.objects.util.parse_date function reference.html
-git.repo.base.Repo.working_dir attribute reference.html
-git.diff.Diffable class reference.html
-git.index.typ.BaseIndexEntry.mode attribute reference.html
-git.refs.RemoteReference.remote_name attribute reference.html
-git.index.typ.BaseIndexEntry.to_blob method reference.html
-git.cmd.Git.CatFileContentStream.readline method reference.html
-git.diff.Diff.deleted_file attribute reference.html
-git.cmd.Git.CatFileContentStream.next method reference.html
-git.index.base.IndexFile.remove method reference.html
-git.repo.base.Repo.git_dir attribute reference.html
-git.remote.FetchInfo.old_commit attribute reference.html
-git.cmd.Git.get_object_header method reference.html
-git.cmd.Git.working_dir attribute reference.html
-git.refs.TagReference.object attribute reference.html
-git.objects.util.altz_to_utctz_str function reference.html
-git.objects.commit.Commit.name_rev attribute reference.html
-git.remote.FetchInfo.note attribute reference.html
-git.repo.base.Repo.clone method reference.html
-git.objects.util.get_object_type_by_name function reference.html
-git.repo.fun.rev_parse function reference.html
-git.util.IterableList class reference.html
-git.objects.tree.TreeModifier class reference.html
-git.objects.base.Object.binsha attribute reference.html
-git.refs.HEAD.reset method reference.html
-git.objects.commit.Commit.summary attribute reference.html
-git.index.util.git_working_dir function reference.html
-git.index.typ.BaseIndexEntry.from_blob classmethod reference.html
-git.diff.Diff.rename_to attribute reference.html
-git.refs.Head class reference.html
-git.repo.fun.touch function reference.html
-git.cmd.Git.cat_file_all attribute reference.html
-git.remote.PushInfo.remote_ref attribute reference.html
-git.index.util.TemporaryFileSwap.file_path attribute reference.html
-git.objects.commit.Commit.create_from_tree classmethod reference.html
-git.repo.base.Repo.blame method reference.html
-git.refs.Head.checkout method reference.html
-git.index.base.IndexFile.unmerged_blobs method reference.html
-git.repo.base.Repo.refs attribute reference.html
-git.remote.FetchInfo.commit attribute reference.html
-git.util.join_path_native function reference.html
-git.index.base.IndexFile.iter_blobs method reference.html
-git.refs.RemoteReference.delete classmethod reference.html
-git.refs.SymbolicReference.rename method reference.html
-git.remote.PushInfo.flags attribute reference.html
-git.repo.base.Repo.create_remote method reference.html
-git.repo.base.Repo.active_branch attribute reference.html
-git.index.base.IndexFile.resolve_blobs method reference.html
-git.diff.Diff.diff attribute reference.html
-git.objects.tree.TreeModifier.set_done method reference.html
-git.util.IndexFileSHA1Writer.write_sha method reference.html
-git.refs.Reference.iter_items classmethod reference.html
-git.objects.util.get_user_id function reference.html
-git.diff.Diff.b_blob attribute reference.html
-git.remote.PushInfo.old_commit attribute reference.html
-git.index.typ.IndexEntry.ctime attribute reference.html
-git.objects.commit.Commit.authored_date attribute reference.html
-git.index.base.IndexFile.entries attribute reference.html
-git.cmd.Git.AutoInterrupt.args attribute reference.html
-git.refs.SymbolicReference.from_path classmethod reference.html
-git.remote.Remote.refs attribute reference.html
-git.objects.commit.Commit class reference.html
-git.objects.base.IndexObject class reference.html
-git.objects.fun.tree_to_stream function reference.html
-git.objects.tree.Tree.traverse method reference.html
-git.remote.Remote.remove classmethod reference.html
-git.objects.fun.tree_entries_from_data function reference.html
-git.cmd.Git class reference.html
-git.index.base.IndexFile.add method reference.html
-git.diff.Diff.rename_from attribute reference.html
-git.repo.base.Repo.delete_remote method reference.html
-git.objects.tree.Tree class reference.html
-git.util.BlockingLockFile class reference.html
-git.objects.base.Object.stream_data method reference.html
-git.refs.Reference.name attribute reference.html
-git.cmd.Git.CatFileContentStream.read method reference.html
-git.repo.base.Repo.create_head method reference.html
-git.repo.base.Repo.tree method reference.html
-git.cmd.Git.stream_object_data method reference.html
-git.index.typ.BaseIndexEntry.binsha attribute reference.html
-git.objects.util.parse_actor_and_date function reference.html
-git.diff.Diff.new_file attribute reference.html
-git.remote.FetchInfo.ref attribute reference.html
-git.refs.TagReference class reference.html
-git.refs.Head.rename method reference.html
-git.refs.RemoteReference class reference.html
-git.objects.tree.Tree.cache attribute reference.html
-git.remote.FetchInfo class reference.html
-git.index.base.IndexFile.path attribute reference.html
-git.index.typ.BaseIndexEntry.flags attribute reference.html
-git.diff.DiffIndex.iter_change_type method reference.html
-git.objects.tag.TagObject.tag attribute reference.html
-git.index.typ.IndexEntry.mtime attribute reference.html
-git.objects.tag.TagObject.object attribute reference.html
-git.remote.Remote.push method reference.html
-git.objects.blob.Blob class reference.html
-git.objects.fun.traverse_trees_recursive function reference.html
-git.util.stream_copy function reference.html
-git.index.base.IndexFile.checkout method reference.html
-git.index.typ.IndexEntry class reference.html
-git.util.IndexFileSHA1Writer.write method reference.html
-git.repo.base.Repo.head attribute reference.html
-git.cmd.Git.cat_file_header attribute reference.html
-git.index.typ.BlobFilter.paths attribute reference.html
-git.repo.base.Repo.rev_parse method reference.html
-git.util.Iterable.iter_items classmethod reference.html
-git.refs.Reference.object attribute reference.html
-git.repo.base.Repo.alternates attribute reference.html
-git.remote.Remote.config_writer attribute reference.html
-git.index.typ.BaseIndexEntry.path attribute reference.html
-git.index.base.CheckoutError exception reference.html
-git.objects.tag.TagObject.tagged_date attribute reference.html
-git.repo.fun.is_git_dir function reference.html
-git.errors.NoSuchPathError exception reference.html
-git.remote.Remote.config_reader attribute reference.html
-git.objects.tag.TagObject class reference.html
-git.objects.util.ProcessStreamAdapter class reference.html
-git.index.base.IndexFile.from_tree classmethod reference.html
-git.objects.tag.TagObject.tagger attribute reference.html
-git.repo.base.Repo.commit method reference.html
-git.index.typ.BaseIndexEntry.stage attribute reference.html
-git.refs.SymbolicReference.iter_items classmethod reference.html
-git.remote.Remote.fetch method reference.html
-git.index.base.IndexFile.reset method reference.html
-git.refs.SymbolicReference.to_full_path classmethod reference.html
-git.refs.Tag attribute reference.html
-git.diff.Diffable.diff method reference.html
-git.repo.base.Repo.clone_from classmethod reference.html
-git.repo.base.Repo.iter_trees method reference.html
-git.refs.SymbolicReference.path attribute reference.html
-git.remote.FetchInfo.name attribute reference.html
-git.remote.PushInfo.summary attribute reference.html
-git.util.Iterable.list_items classmethod reference.html
-git.cmd.Git.AutoInterrupt class reference.html
-git.index.typ.IndexEntry.from_base classmethod reference.html
-git.objects.commit.Commit.stats attribute reference.html
-git.index.typ.IndexEntry.gid attribute reference.html
-git.repo.base.Repo.init classmethod reference.html
-git.objects.commit.Commit.parents attribute reference.html
-git.repo.base.Repo.delete_head method reference.html
-git.repo.base.Repo class reference.html
-git.errors.GitCommandError exception reference.html
-git.index.base.IndexFile.version attribute reference.html
-git.index.fun.entry_key function reference.html
-git.repo.base.Repo.git attribute reference.html
-git.index.base.IndexFile.move method reference.html
-git.index.base.IndexFile.update method reference.html
-git.util.to_native_path_windows function reference.html
-git.index.typ.IndexEntry.from_blob classmethod reference.html
-git.index.util.post_clear_cache function reference.html
-git.cmd.Git.execute method reference.html
-git.remote.Remote.stale_refs attribute reference.html
-git.cmd.Git.CatFileContentStream class reference.html
-git.refs.Head.create classmethod reference.html
-git.diff.Diff.a_blob attribute reference.html
-git.objects.util.Traversable.traverse method reference.html
-git.remote.RemoteProgress.line_dropped method reference.html
-git.repo.base.Repo.index attribute reference.html
-git.repo.base.Repo.branches attribute reference.html
-git.repo.base.Repo.remotes attribute reference.html
-git.index.fun.write_cache function reference.html
-git.refs.SymbolicReference.ref attribute reference.html
-git.cmd.Git.AutoInterrupt.wait method reference.html
-git.repo.base.Repo.heads attribute reference.html
-git.index.typ.IndexEntry.uid attribute reference.html
-git.objects.commit.Commit.iter_parents method reference.html
-git.refs.SymbolicReference.delete classmethod reference.html
-git.repo.base.Repo.create_tag method reference.html
-git.repo.base.Repo.config_writer method reference.html
-git.index.typ.IndexEntry.size attribute reference.html
-git.objects.util.utctz_to_altz function reference.html
-git.repo.base.Repo.archive method reference.html
-git.objects.base.Object.size attribute reference.html
-git.cmd.Git.transform_kwargs method reference.html
-git.remote.Remote.rm classmethod reference.html
-git.index.base.IndexFile class reference.html
-git.refs.HEAD class reference.html
-git.util.join_path function reference.html
-git.repo.base.Repo.delete_tag method reference.html
-git.repo.base.Repo.tag method reference.html
-git.index.fun.stat_mode_to_index_mode function reference.html
-git.remote.Remote class reference.html
-git.diff.DiffIndex class reference.html
-git.util.Stats.total attribute reference.html
-git.remote.Remote.rename method reference.html
-git.util.Stats.files attribute reference.html
-git.index.util.TemporaryFileSwap.tmp_file_path attribute reference.html
-git.index.base.IndexFile.new classmethod reference.html
-git.objects.tree.Tree.trees attribute reference.html
-git.repo.base.Repo.working_tree_dir attribute reference.html
-git.index.base.IndexFile.write method reference.html
-git.index.util.TemporaryFileSwap class reference.html
-git.objects.submodule.Submodule class reference.html
-git.index.typ.BlobFilter class reference.html
-git.cmd.Git.clear_cache method reference.html
-git.index.base.IndexFile.merge_tree method reference.html
-git.index.base.IndexFile.write_tree method reference.html
-git.util.IndexFileSHA1Writer.f attribute reference.html
-git.refs.Head.delete classmethod reference.html
-git.repo.base.Repo.config_reader method reference.html
-git.refs.SymbolicReference.dereference_recursive classmethod reference.html
-git.index.typ.IndexEntry.inode attribute reference.html
-git.remote.Remote.iter_items classmethod reference.html
-git.refs.SymbolicReference.reference attribute reference.html
-git.objects.util.verify_utctz function reference.html
-git.index.base.IndexFile.repo attribute reference.html
-git.refs.SymbolicReference class reference.html
-git.repo.base.Repo.references attribute reference.html
-git.refs.TagReference.create classmethod reference.html
-git.remote.Remote.update method reference.html
-git.index.base.IndexFile.commit method reference.html
-git.objects.commit.Commit.iter_items classmethod reference.html
-git.remote.Remote.add classmethod reference.html
-git.remote.RemoteProgress.update method reference.html
-git.objects.tree.Tree.blobs attribute reference.html
-git.index.typ.IndexEntry.dev attribute reference.html
-git.objects.fun.traverse_tree_recursive function reference.html
-git.objects.util.Traversable class reference.html
-git.objects.tree.TreeModifier.add_unchecked method reference.html
-git.remote.PushInfo.remote_ref_string attribute reference.html
-git.util.Stats class reference.html
-git.objects.commit.Commit.committer_tz_offset attribute reference.html
-git.util.IndexFileSHA1Writer.sha1 attribute reference.html
-git.repo.base.Repo.remote method reference.html
-git.objects.tag.TagObject.tagger_tz_offset attribute reference.html
-git.refs.SymbolicReference.name attribute reference.html
-git.util.IndexFileSHA1Writer.close method reference.html
-git.objects.base.IndexObject.mode attribute reference.html
-git.diff.Diff.a_mode attribute reference.html
diff --git a/doc/doc_index/0.3.0/reference.html b/doc/doc_index/0.3.0/reference.html
deleted file mode 100644
index 097fa05d..00000000
--- a/doc/doc_index/0.3.0/reference.html
+++ /dev/null
@@ -1,3865 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>API Reference &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="index.html" />
- <link rel="next" title="Roadmap" href="roadmap.html" />
- <link rel="prev" title="GitPython Tutorial" href="tutorial.html" />
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li class="right" >
- <a href="roadmap.html" title="Roadmap"
- accesskey="N">next</a> |</li>
- <li class="right" >
- <a href="tutorial.html" title="GitPython Tutorial"
- accesskey="P">previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
- <div class="section" id="api-reference">
-<span id="api-reference-toplevel"></span><h1>API Reference<a class="headerlink" href="#api-reference" title="Permalink to this headline">¶</a></h1>
-<div class="section" id="module-git.objects.base">
-<h2>Objects.Base<a class="headerlink" href="#module-git.objects.base" title="Permalink to this headline">¶</a></h2>
-<dl class="class">
-<dt id="git.objects.base.Object">
-<em class="property">class </em><tt class="descclassname">git.objects.base.</tt><tt class="descname">Object</tt><big>(</big><em>repo</em>, <em>binsha</em><big>)</big><a class="headerlink" href="#git.objects.base.Object" title="Permalink to this definition">¶</a></dt>
-<dd><p>Implements an Object which may be Blobs, Trees, Commits and Tags</p>
-<dl class="attribute">
-<dt id="git.objects.base.Object.binsha">
-<tt class="descname">binsha</tt><a class="headerlink" href="#git.objects.base.Object.binsha" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.base.Object.data_stream">
-<tt class="descname">data_stream</tt><a class="headerlink" href="#git.objects.base.Object.data_stream" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">File Object compatible stream to the uncompressed raw data of the object</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">returned streams must be read in order</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.base.Object.hexsha">
-<tt class="descname">hexsha</tt><a class="headerlink" href="#git.objects.base.Object.hexsha" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">40 byte hex version of our 20 byte binary sha</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.objects.base.Object.new">
-<em class="property">classmethod </em><tt class="descname">new</tt><big>(</big><em>repo</em>, <em>id</em><big>)</big><a class="headerlink" href="#git.objects.base.Object.new" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">New Object instance of a type appropriate to the object type behind
-id. The id of the newly created object will be a binsha even though
-the input id may have been a Reference or Rev-Spec</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>id</em> &#8211; reference, rev-spec, or hexsha</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">This cannot be a __new__ method as it would always call __init__
-with the input id which is not necessarily a binsha.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.objects.base.Object.new_from_sha">
-<em class="property">classmethod </em><tt class="descname">new_from_sha</tt><big>(</big><em>repo</em>, <em>sha1</em><big>)</big><a class="headerlink" href="#git.objects.base.Object.new_from_sha" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">new object instance of a type appropriate to represent the given
-binary sha1</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>sha1</em> &#8211; 20 byte binary sha1</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.base.Object.repo">
-<tt class="descname">repo</tt><a class="headerlink" href="#git.objects.base.Object.repo" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.base.Object.size">
-<tt class="descname">size</tt><a class="headerlink" href="#git.objects.base.Object.size" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.objects.base.Object.stream_data">
-<tt class="descname">stream_data</tt><big>(</big><em>ostream</em><big>)</big><a class="headerlink" href="#git.objects.base.Object.stream_data" title="Permalink to this definition">¶</a></dt>
-<dd>Writes our data directly to the given output stream
-:param ostream: File object compatible stream object.
-:return: self</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.objects.base.IndexObject">
-<em class="property">class </em><tt class="descclassname">git.objects.base.</tt><tt class="descname">IndexObject</tt><big>(</big><em>repo</em>, <em>binsha</em>, <em>mode=None</em>, <em>path=None</em><big>)</big><a class="headerlink" href="#git.objects.base.IndexObject" title="Permalink to this definition">¶</a></dt>
-<dd><p>Base for all objects that can be part of the index file , namely Tree, Blob and
-SubModule objects</p>
-<dl class="attribute">
-<dt id="git.objects.base.IndexObject.abspath">
-<tt class="descname">abspath</tt><a class="headerlink" href="#git.objects.base.IndexObject.abspath" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">Absolute path to this index object in the file system ( as opposed to the
-.path field which is a path relative to the git repository ).</p>
-<p class="last">The returned path will be native to the system and contains &#8216;&#8217; on windows.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.base.IndexObject.mode">
-<tt class="descname">mode</tt><a class="headerlink" href="#git.objects.base.IndexObject.mode" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.base.IndexObject.name">
-<tt class="descname">name</tt><a class="headerlink" href="#git.objects.base.IndexObject.name" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Name portion of the path, effectively being the basename</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.base.IndexObject.path">
-<tt class="descname">path</tt><a class="headerlink" href="#git.objects.base.IndexObject.path" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.objects.blob">
-<h2>Objects.Blob<a class="headerlink" href="#module-git.objects.blob" title="Permalink to this headline">¶</a></h2>
-<dl class="class">
-<dt id="git.objects.blob.Blob">
-<em class="property">class </em><tt class="descclassname">git.objects.blob.</tt><tt class="descname">Blob</tt><big>(</big><em>repo</em>, <em>binsha</em>, <em>mode=None</em>, <em>path=None</em><big>)</big><a class="headerlink" href="#git.objects.blob.Blob" title="Permalink to this definition">¶</a></dt>
-<dd><p>A Blob encapsulates a git blob object</p>
-<dl class="attribute">
-<dt id="git.objects.blob.Blob.mime_type">
-<tt class="descname">mime_type</tt><a class="headerlink" href="#git.objects.blob.Blob.mime_type" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">String describing the mime type of this file (based on the filename)</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">Defaults to &#8216;text/plain&#8217; in case the actual file type is unknown.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.objects.commit">
-<h2>Objects.Commit<a class="headerlink" href="#module-git.objects.commit" title="Permalink to this headline">¶</a></h2>
-<dl class="class">
-<dt id="git.objects.commit.Commit">
-<em class="property">class </em><tt class="descclassname">git.objects.commit.</tt><tt class="descname">Commit</tt><big>(</big><em>repo</em>, <em>binsha</em>, <em>tree=None</em>, <em>author=None</em>, <em>authored_date=None</em>, <em>author_tz_offset=None</em>, <em>committer=None</em>, <em>committed_date=None</em>, <em>committer_tz_offset=None</em>, <em>message=None</em>, <em>parents=None</em>, <em>encoding=None</em><big>)</big><a class="headerlink" href="#git.objects.commit.Commit" title="Permalink to this definition">¶</a></dt>
-<dd><p>Wraps a git Commit object.</p>
-<p>This class will act lazily on some of its attributes and will query the
-value on demand only if it involves calling the git binary.</p>
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.author">
-<tt class="descname">author</tt><a class="headerlink" href="#git.objects.commit.Commit.author" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.author_tz_offset">
-<tt class="descname">author_tz_offset</tt><a class="headerlink" href="#git.objects.commit.Commit.author_tz_offset" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.authored_date">
-<tt class="descname">authored_date</tt><a class="headerlink" href="#git.objects.commit.Commit.authored_date" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.committed_date">
-<tt class="descname">committed_date</tt><a class="headerlink" href="#git.objects.commit.Commit.committed_date" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.committer">
-<tt class="descname">committer</tt><a class="headerlink" href="#git.objects.commit.Commit.committer" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.committer_tz_offset">
-<tt class="descname">committer_tz_offset</tt><a class="headerlink" href="#git.objects.commit.Commit.committer_tz_offset" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.objects.commit.Commit.count">
-<tt class="descname">count</tt><big>(</big><em>paths=''</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.objects.commit.Commit.count" title="Permalink to this definition">¶</a></dt>
-<dd><p>Count the number of commits reachable from this commit</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>paths</em> &#8211; is an optinal path or a list of paths restricting the return value
-to commits actually containing the paths</li>
-<li><em>kwargs</em> &#8211; Additional options to be passed to git-rev-list. They must not alter
-the ouput style of the command, or parsing will yield incorrect results</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">int defining the number of reachable commits</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.objects.commit.Commit.create_from_tree">
-<em class="property">classmethod </em><tt class="descname">create_from_tree</tt><big>(</big><em>repo</em>, <em>tree</em>, <em>message</em>, <em>parent_commits=None</em>, <em>head=False</em><big>)</big><a class="headerlink" href="#git.objects.commit.Commit.create_from_tree" title="Permalink to this definition">¶</a></dt>
-<dd><p>Commit the given tree, creating a commit object.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>repo</em> &#8211; Repo object the commit should be part of</li>
-<li><em>tree</em> &#8211; Tree object or hex or bin sha
-the tree of the new commit</li>
-<li><em>message</em> &#8211; Commit message. It may be an empty string if no message is provided.
-It will be converted to a string in any case.</li>
-<li><em>parent_commits</em> &#8211; Optional Commit objects to use as parents for the new commit.
-If empty list, the commit will have no parents at all and become
-a root commit.
-If None , the current head commit will be the parent of the
-new commit object</li>
-<li><em>head</em> &#8211; If True, the HEAD will be advanced to the new commit automatically.
-Else the HEAD will remain pointing on the previous commit. This could
-lead to undesired results when diffing files.</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">Commit object representing the new commit</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">Additional information about the committer and Author are taken from the
-environment or from the git configuration, see git-commit-tree for
-more information</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.encoding">
-<tt class="descname">encoding</tt><a class="headerlink" href="#git.objects.commit.Commit.encoding" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="classmethod">
-<dt id="git.objects.commit.Commit.iter_items">
-<em class="property">classmethod </em><tt class="descname">iter_items</tt><big>(</big><em>repo</em>, <em>rev</em>, <em>paths=''</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.objects.commit.Commit.iter_items" title="Permalink to this definition">¶</a></dt>
-<dd><p>Find all commits matching the given criteria.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>repo</em> &#8211; is the Repo</li>
-<li><em>rev</em> &#8211; revision specifier, see git-rev-parse for viable options</li>
-<li><em>paths</em> &#8211; is an optinal path or list of paths, if set only Commits that include the path
-or paths will be considered</li>
-<li><em>kwargs</em> &#8211; optional keyword arguments to git rev-list where
-<tt class="docutils literal"><span class="pre">max_count</span></tt> is the maximum number of commits to fetch
-<tt class="docutils literal"><span class="pre">skip</span></tt> is the number of commits to skip
-<tt class="docutils literal"><span class="pre">since</span></tt> all commits since i.e. &#8216;1970-01-01&#8217;</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">iterator yielding Commit items</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.objects.commit.Commit.iter_parents">
-<tt class="descname">iter_parents</tt><big>(</big><em>paths=''</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.objects.commit.Commit.iter_parents" title="Permalink to this definition">¶</a></dt>
-<dd><p>Iterate _all_ parents of this commit.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>paths</em> &#8211; Optional path or list of paths limiting the Commits to those that
-contain at least one of the paths</li>
-<li><em>kwargs</em> &#8211; All arguments allowed by git-rev-list</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">Iterator yielding Commit objects which are parents of self</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.message">
-<tt class="descname">message</tt><a class="headerlink" href="#git.objects.commit.Commit.message" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.name_rev">
-<tt class="descname">name_rev</tt><a class="headerlink" href="#git.objects.commit.Commit.name_rev" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">String describing the commits hex sha based on the closest Reference.
-Mostly useful for UI purposes</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.parents">
-<tt class="descname">parents</tt><a class="headerlink" href="#git.objects.commit.Commit.parents" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.stats">
-<tt class="descname">stats</tt><a class="headerlink" href="#git.objects.commit.Commit.stats" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a git stat from changes between this commit and its first parent
-or from all changes done if this is the very first commit.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">git.Stats</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.summary">
-<tt class="descname">summary</tt><a class="headerlink" href="#git.objects.commit.Commit.summary" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">First line of the commit message</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.commit.Commit.tree">
-<tt class="descname">tree</tt><a class="headerlink" href="#git.objects.commit.Commit.tree" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.objects.tag">
-<h2>Objects.Tag<a class="headerlink" href="#module-git.objects.tag" title="Permalink to this headline">¶</a></h2>
-<p>Module containing all object based types.</p>
-<dl class="class">
-<dt id="git.objects.tag.TagObject">
-<em class="property">class </em><tt class="descclassname">git.objects.tag.</tt><tt class="descname">TagObject</tt><big>(</big><em>repo</em>, <em>binsha</em>, <em>object=None</em>, <em>tag=None</em>, <em>tagger=None</em>, <em>tagged_date=None</em>, <em>tagger_tz_offset=None</em>, <em>message=None</em><big>)</big><a class="headerlink" href="#git.objects.tag.TagObject" title="Permalink to this definition">¶</a></dt>
-<dd><p>Non-Lightweight tag carrying additional information about an object we are pointing to.</p>
-<dl class="attribute">
-<dt id="git.objects.tag.TagObject.message">
-<tt class="descname">message</tt><a class="headerlink" href="#git.objects.tag.TagObject.message" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.tag.TagObject.object">
-<tt class="descname">object</tt><a class="headerlink" href="#git.objects.tag.TagObject.object" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.tag.TagObject.tag">
-<tt class="descname">tag</tt><a class="headerlink" href="#git.objects.tag.TagObject.tag" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.tag.TagObject.tagged_date">
-<tt class="descname">tagged_date</tt><a class="headerlink" href="#git.objects.tag.TagObject.tagged_date" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.tag.TagObject.tagger">
-<tt class="descname">tagger</tt><a class="headerlink" href="#git.objects.tag.TagObject.tagger" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.tag.TagObject.tagger_tz_offset">
-<tt class="descname">tagger_tz_offset</tt><a class="headerlink" href="#git.objects.tag.TagObject.tagger_tz_offset" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.objects.tree">
-<h2>Objects.Tree<a class="headerlink" href="#module-git.objects.tree" title="Permalink to this headline">¶</a></h2>
-<dl class="class">
-<dt id="git.objects.tree.TreeModifier">
-<em class="property">class </em><tt class="descclassname">git.objects.tree.</tt><tt class="descname">TreeModifier</tt><big>(</big><em>cache</em><big>)</big><a class="headerlink" href="#git.objects.tree.TreeModifier" title="Permalink to this definition">¶</a></dt>
-<dd><p>A utility class providing methods to alter the underlying cache in a list-like fashion.</p>
-<p>Once all adjustments are complete, the _cache, which really is a refernce to
-the cache of a tree, will be sorted. Assuring it will be in a serializable state</p>
-<dl class="method">
-<dt id="git.objects.tree.TreeModifier.add">
-<tt class="descname">add</tt><big>(</big><em>sha</em>, <em>mode</em>, <em>name</em>, <em>force=False</em><big>)</big><a class="headerlink" href="#git.objects.tree.TreeModifier.add" title="Permalink to this definition">¶</a></dt>
-<dd><p>Add the given item to the tree. If an item with the given name already
-exists, nothing will be done, but a ValueError will be raised if the
-sha and mode of the existing item do not match the one you add, unless
-force is True</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>sha</em> &#8211; The 20 or 40 byte sha of the item to add</li>
-<li><em>mode</em> &#8211; int representing the stat compatible mode of the item</li>
-<li><em>force</em> &#8211; If True, an item with your name and information will overwrite
-any existing item with the same name, no matter which information it has</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">self</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.objects.tree.TreeModifier.add_unchecked">
-<tt class="descname">add_unchecked</tt><big>(</big><em>binsha</em>, <em>mode</em>, <em>name</em><big>)</big><a class="headerlink" href="#git.objects.tree.TreeModifier.add_unchecked" title="Permalink to this definition">¶</a></dt>
-<dd>Add the given item to the tree, its correctness is assumed, which
-puts the caller into responsibility to assure the input is correct.
-For more information on the parameters, see <tt class="docutils literal"><span class="pre">add</span></tt>
-:param binsha: 20 byte binary sha</dd></dl>
-
-<dl class="method">
-<dt id="git.objects.tree.TreeModifier.set_done">
-<tt class="descname">set_done</tt><big>(</big><big>)</big><a class="headerlink" href="#git.objects.tree.TreeModifier.set_done" title="Permalink to this definition">¶</a></dt>
-<dd>Call this method once you are done modifying the tree information.
-It may be called several times, but be aware that each call will cause
-a sort operation
-:return self:</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.objects.tree.Tree">
-<em class="property">class </em><tt class="descclassname">git.objects.tree.</tt><tt class="descname">Tree</tt><big>(</big><em>repo</em>, <em>binsha</em>, <em>mode=16384</em>, <em>path=None</em><big>)</big><a class="headerlink" href="#git.objects.tree.Tree" title="Permalink to this definition">¶</a></dt>
-<dd><p>Tree objects represent an ordered list of Blobs and other Trees.</p>
-<p><tt class="docutils literal"><span class="pre">Tree</span> <span class="pre">as</span> <span class="pre">a</span> <span class="pre">list</span></tt>:</p>
-<div class="highlight-python"><pre>Access a specific blob using the
-tree['filename'] notation.
-
-You may as well access by index
-blob = tree[0]</pre>
-</div>
-<dl class="attribute">
-<dt id="git.objects.tree.Tree.blobs">
-<tt class="descname">blobs</tt><a class="headerlink" href="#git.objects.tree.Tree.blobs" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">list(Blob, ...) list of blobs directly below this tree</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.tree.Tree.cache">
-<tt class="descname">cache</tt><a class="headerlink" href="#git.objects.tree.Tree.cache" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">An object allowing to modify the internal cache. This can be used
-to change the tree&#8217;s contents. When done, make sure you call <tt class="docutils literal"><span class="pre">set_done</span></tt>
-on the tree modifier, or serialization behaviour will be incorrect.
-See the <tt class="docutils literal"><span class="pre">TreeModifier</span></tt> for more information on how to alter the cache</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.objects.tree.Tree.traverse">
-<tt class="descname">traverse</tt><big>(</big><em>predicate=&lt;function &lt;lambda&gt; at 0x26386e0&gt;</em>, <em>prune=&lt;function &lt;lambda&gt; at 0x2638758&gt;</em>, <em>depth=-1</em>, <em>branch_first=True</em>, <em>visit_once=False</em>, <em>ignore_self=1</em><big>)</big><a class="headerlink" href="#git.objects.tree.Tree.traverse" title="Permalink to this definition">¶</a></dt>
-<dd>For documentation, see util.Traversable.traverse
-Trees are set to visit_once = False to gain more performance in the traversal</dd></dl>
-
-<dl class="attribute">
-<dt id="git.objects.tree.Tree.trees">
-<tt class="descname">trees</tt><a class="headerlink" href="#git.objects.tree.Tree.trees" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">list(Tree, ...) list of trees directly below this tree</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.objects.fun">
-<h2>Objects.Functions<a class="headerlink" href="#module-git.objects.fun" title="Permalink to this headline">¶</a></h2>
-<p>Module with functions which are supposed to be as fast as possible</p>
-<dl class="function">
-<dt id="git.objects.fun.tree_to_stream">
-<tt class="descclassname">git.objects.fun.</tt><tt class="descname">tree_to_stream</tt><big>(</big><em>entries</em>, <em>write</em><big>)</big><a class="headerlink" href="#git.objects.fun.tree_to_stream" title="Permalink to this definition">¶</a></dt>
-<dd>Write the give list of entries into a stream using its write method
-:param entries: <strong>sorted</strong> list of tuples with (binsha, mode, name)
-:param write: write method which takes a data string</dd></dl>
-
-<dl class="function">
-<dt id="git.objects.fun.tree_entries_from_data">
-<tt class="descclassname">git.objects.fun.</tt><tt class="descname">tree_entries_from_data</tt><big>(</big><em>data</em><big>)</big><a class="headerlink" href="#git.objects.fun.tree_entries_from_data" title="Permalink to this definition">¶</a></dt>
-<dd>Reads the binary representation of a tree and returns tuples of Tree items
-:param data: data block with tree data
-:return: list(tuple(binsha, mode, tree_relative_path), ...)</dd></dl>
-
-<dl class="function">
-<dt id="git.objects.fun.traverse_trees_recursive">
-<tt class="descclassname">git.objects.fun.</tt><tt class="descname">traverse_trees_recursive</tt><big>(</big><em>odb</em>, <em>tree_shas</em>, <em>path_prefix</em><big>)</big><a class="headerlink" href="#git.objects.fun.traverse_trees_recursive" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">list with entries according to the given binary tree-shas.
-The result is encoded in a list
-of n tuple|None per blob/commit, (n == len(tree_shas)), where
-* [0] == 20 byte sha
-* [1] == mode as int
-* [2] == path relative to working tree root
-The entry tuple is None if the respective blob/commit did not
-exist in the given tree.</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>tree_shas</em> &#8211; iterable of shas pointing to trees. All trees must
-be on the same level. A tree-sha may be None in which case None</li>
-<li><em>path_prefix</em> &#8211; a prefix to be added to the returned paths on this level,
-set it &#8216;&#8217; for the first iteration</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">The ordering of the returned items will be partially lost</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.objects.fun.traverse_tree_recursive">
-<tt class="descclassname">git.objects.fun.</tt><tt class="descname">traverse_tree_recursive</tt><big>(</big><em>odb</em>, <em>tree_sha</em>, <em>path_prefix</em><big>)</big><a class="headerlink" href="#git.objects.fun.traverse_tree_recursive" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">list of entries of the tree pointed to by the binary tree_sha. An entry
-has the following format:
-* [0] 20 byte sha
-* [1] mode as int
-* [2] path relative to the repository</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>path_prefix</em> &#8211; prefix to prepend to the front of all returned paths</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.objects.submodule">
-<h2>Objects.Submodule<a class="headerlink" href="#module-git.objects.submodule" title="Permalink to this headline">¶</a></h2>
-<dl class="class">
-<dt id="git.objects.submodule.Submodule">
-<em class="property">class </em><tt class="descclassname">git.objects.submodule.</tt><tt class="descname">Submodule</tt><big>(</big><em>repo</em>, <em>binsha</em>, <em>mode=None</em>, <em>path=None</em><big>)</big><a class="headerlink" href="#git.objects.submodule.Submodule" title="Permalink to this definition">¶</a></dt>
-<dd>Implements access to a git submodule. They are special in that their sha
-represents a commit in the submodule&#8217;s repository which is to be checked out
-at the path of this instance.
-The submodule type does not have a string type associated with it, as it exists
-solely as a marker in the tree and index</dd></dl>
-
-</div>
-<div class="section" id="module-git.objects.util">
-<h2>Objects.Util<a class="headerlink" href="#module-git.objects.util" title="Permalink to this headline">¶</a></h2>
-<p>Module for general utility functions</p>
-<dl class="function">
-<dt id="git.objects.util.get_object_type_by_name">
-<tt class="descclassname">git.objects.util.</tt><tt class="descname">get_object_type_by_name</tt><big>(</big><em>object_type_name</em><big>)</big><a class="headerlink" href="#git.objects.util.get_object_type_by_name" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">type suitable to handle the given object type name.
-Use the type to create new instances.</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>object_type_name</em> &#8211; Member of TYPES</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises ValueError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">In case object_type_name is unknown</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.objects.util.get_user_id">
-<tt class="descclassname">git.objects.util.</tt><tt class="descname">get_user_id</tt><big>(</big><big>)</big><a class="headerlink" href="#git.objects.util.get_user_id" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">string identifying the currently active system user as <a class="reference external" href="mailto:name&#37;&#52;&#48;node">name<span>&#64;</span>node</a></td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">user can be set with the &#8216;USER&#8217; environment variable, usually set on windows</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.objects.util.parse_date">
-<tt class="descclassname">git.objects.util.</tt><tt class="descname">parse_date</tt><big>(</big><em>string_date</em><big>)</big><a class="headerlink" href="#git.objects.util.parse_date" title="Permalink to this definition">¶</a></dt>
-<dd><p>Parse the given date as one of the following</p>
-<blockquote>
-<ul>
-<li><p class="first">Git internal format: timestamp offset</p>
-</li>
-<li><p class="first">RFC 2822: Thu, 07 Apr 2005 22:13:13 +0200.</p>
-</li>
-<li><dl class="first docutils">
-<dt>ISO 8601 2005-04-07T22:13:13</dt>
-<dd><p class="first last">The T can be a space as well</p>
-</dd>
-</dl>
-</li>
-</ul>
-</blockquote>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Tuple(int(timestamp), int(offset)), both in seconds since epoch</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises ValueError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">If the format could not be understood</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">Date can also be YYYY.MM.DD, MM/DD/YYYY and DD.MM.YYYY</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.objects.util.parse_actor_and_date">
-<tt class="descclassname">git.objects.util.</tt><tt class="descname">parse_actor_and_date</tt><big>(</big><em>line</em><big>)</big><a class="headerlink" href="#git.objects.util.parse_actor_and_date" title="Permalink to this definition">¶</a></dt>
-<dd><p>Parse out the actor (author or committer) info from a line like:</p>
-<div class="highlight-python"><pre>author Tom Preston-Werner &lt;tom@mojombo.com&gt; 1191999972 -0700</pre>
-</div>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">[Actor, int_seconds_since_epoch, int_timezone_offset]</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="class">
-<dt id="git.objects.util.ProcessStreamAdapter">
-<em class="property">class </em><tt class="descclassname">git.objects.util.</tt><tt class="descname">ProcessStreamAdapter</tt><big>(</big><em>process</em>, <em>stream_name</em><big>)</big><a class="headerlink" href="#git.objects.util.ProcessStreamAdapter" title="Permalink to this definition">¶</a></dt>
-<dd><p>Class wireing all calls to the contained Process instance.</p>
-<p>Use this type to hide the underlying process to provide access only to a specified
-stream. The process is usually wrapped into an AutoInterrupt class to kill
-it if the instance goes out of scope.</p>
-</dd></dl>
-
-<dl class="class">
-<dt id="git.objects.util.Traversable">
-<em class="property">class </em><tt class="descclassname">git.objects.util.</tt><tt class="descname">Traversable</tt><a class="headerlink" href="#git.objects.util.Traversable" title="Permalink to this definition">¶</a></dt>
-<dd><p>Simple interface to perforam depth-first or breadth-first traversals
-into one direction.
-Subclasses only need to implement one function.
-Instances of the Subclass must be hashable</p>
-<dl class="method">
-<dt id="git.objects.util.Traversable.traverse">
-<tt class="descname">traverse</tt><big>(</big><em>predicate=&lt;function &lt;lambda&gt; at 0x2627c08&gt;</em>, <em>prune=&lt;function &lt;lambda&gt; at 0x2627c80&gt;</em>, <em>depth=-1</em>, <em>branch_first=True</em>, <em>visit_once=True</em>, <em>ignore_self=1</em>, <em>as_edge=False</em><big>)</big><a class="headerlink" href="#git.objects.util.Traversable.traverse" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">iterator yieling of items found when traversing self</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
-<li><em>predicate</em> &#8211; f(i,d) returns False if item i at depth d should not be included in the result</li>
-<li><em>prune</em> &#8211; f(i,d) return True if the search should stop at item i at depth d.
-Item i will not be returned.</li>
-<li><em>depth</em> &#8211; define at which level the iteration should not go deeper
-if -1, there is no limit
-if 0, you would effectively only get self, the root of the iteration
-i.e. if 1, you would only get the first level of predessessors/successors</li>
-<li><em>branch_first</em> &#8211; if True, items will be returned branch first, otherwise depth first</li>
-<li><em>visit_once</em> &#8211; if True, items will only be returned once, although they might be encountered
-several times. Loops are prevented that way.</li>
-<li><em>ignore_self</em> &#8211; if True, self will be ignored and automatically pruned from
-the result. Otherwise it will be the first item to be returned.
-If as_edge is True, the source of the first edge is None</li>
-<li><em>as_edge</em> &#8211; if True, return a pair of items, first being the source, second the
-destinatination, i.e. tuple(src, dest) with the edge spanning from
-source to destination</li>
-</ul>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="function">
-<dt id="git.objects.util.altz_to_utctz_str">
-<tt class="descclassname">git.objects.util.</tt><tt class="descname">altz_to_utctz_str</tt><big>(</big><em>altz</em><big>)</big><a class="headerlink" href="#git.objects.util.altz_to_utctz_str" title="Permalink to this definition">¶</a></dt>
-<dd>As above, but inverses the operation, returning a string that can be used
-in commit objects</dd></dl>
-
-<dl class="function">
-<dt id="git.objects.util.utctz_to_altz">
-<tt class="descclassname">git.objects.util.</tt><tt class="descname">utctz_to_altz</tt><big>(</big><em>utctz</em><big>)</big><a class="headerlink" href="#git.objects.util.utctz_to_altz" title="Permalink to this definition">¶</a></dt>
-<dd>we convert utctz to the timezone in seconds, it is the format time.altzone
-returns. Git stores it as UTC timezon which has the opposite sign as well,
-which explains the -1 * ( that was made explicit here )
-:param utctz: git utc timezone string, i.e. +0200</dd></dl>
-
-<dl class="function">
-<dt id="git.objects.util.verify_utctz">
-<tt class="descclassname">git.objects.util.</tt><tt class="descname">verify_utctz</tt><big>(</big><em>offset</em><big>)</big><a class="headerlink" href="#git.objects.util.verify_utctz" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name" colspan="2">Raises ValueError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">if offset is incorrect</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">offset</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.index.base">
-<h2>Index.Base<a class="headerlink" href="#module-git.index.base" title="Permalink to this headline">¶</a></h2>
-<p>Module containing Index implementation, allowing to perform all kinds of index
-manipulations such as querying and merging.</p>
-<dl class="class">
-<dt id="git.index.base.IndexFile">
-<em class="property">class </em><tt class="descclassname">git.index.base.</tt><tt class="descname">IndexFile</tt><big>(</big><em>repo</em>, <em>file_path=None</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile" title="Permalink to this definition">¶</a></dt>
-<dd><p>Implements an Index that can be manipulated using a native implementation in
-order to save git command function calls wherever possible.</p>
-<p>It provides custom merging facilities allowing to merge without actually changing
-your index or your working tree. This way you can perform own test-merges based
-on the index only without having to deal with the working copy. This is useful
-in case of partial working trees.</p>
-<p><tt class="docutils literal"><span class="pre">Entries</span></tt></p>
-<p>The index contains an entries dict whose keys are tuples of type IndexEntry
-to facilitate access.</p>
-<p>You may read the entries dict or manipulate it using IndexEntry instance, i.e.:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">index</span><span class="o">.</span><span class="n">entries</span><span class="p">[</span><span class="n">index</span><span class="o">.</span><span class="n">entry_key</span><span class="p">(</span><span class="n">index_entry_instance</span><span class="p">)]</span> <span class="o">=</span> <span class="n">index_entry_instance</span>
-</pre></div>
-</div>
-<p>Make sure you use index.write() once you are done manipulating the index directly
-before operating on it using the git command</p>
-<dl class="method">
-<dt id="git.index.base.IndexFile.add">
-<tt class="descname">add</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.add" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.checkout">
-<tt class="descname">checkout</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.checkout" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.commit">
-<tt class="descname">commit</tt><big>(</big><em>message</em>, <em>parent_commits=None</em>, <em>head=True</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.commit" title="Permalink to this definition">¶</a></dt>
-<dd><p>Commit the current default index file, creating a commit object.</p>
-<p>For more information on the arguments, see tree.commit.
-:note:</p>
-<blockquote>
-If you have manually altered the .entries member of this instance,
-don&#8217;t forget to write() your changes to disk beforehand.</blockquote>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Commit object representing the new commit</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.diff">
-<tt class="descname">diff</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.diff" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.base.IndexFile.entries">
-<tt class="descname">entries</tt><a class="headerlink" href="#git.index.base.IndexFile.entries" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="classmethod">
-<dt id="git.index.base.IndexFile.entry_key">
-<em class="property">classmethod </em><tt class="descname">entry_key</tt><big>(</big><em>*entry</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.entry_key" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="classmethod">
-<dt id="git.index.base.IndexFile.from_tree">
-<em class="property">classmethod </em><tt class="descname">from_tree</tt><big>(</big><em>repo</em>, <em>*treeish</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.from_tree" title="Permalink to this definition">¶</a></dt>
-<dd><p>Merge the given treeish revisions into a new index which is returned.
-The original index will remain unaltered</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>repo</em> &#8211; The repository treeish are located in.</li>
-<li><em>treeish</em> &#8211; <p>One, two or three Tree Objects, Commits or 40 byte hexshas. The result
-changes according to the amount of trees.
-If 1 Tree is given, it will just be read into a new index
-If 2 Trees are given, they will be merged into a new index using a</p>
-<blockquote>
-two way merge algorithm. Tree 1 is the &#8216;current&#8217; tree, tree 2 is the &#8216;other&#8217;
-one. It behaves like a fast-forward.
-If 3 Trees are given, a 3-way merge will be performed with the first tree
-being the common ancestor of tree 2 and tree 3. Tree 2 is the &#8216;current&#8217; tree,
-tree 3 is the &#8216;other&#8217; one</blockquote>
-</li>
-<li><em>kwargs</em> &#8211; Additional arguments passed to git-read-tree</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">New IndexFile instance. It will point to a temporary index location which
-does not exist anymore. If you intend to write such a merged Index, supply
-an alternate file_path to its &#8216;write&#8217; method.</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first">In the three-way merge case, &#8211;aggressive will be specified to automatically
-resolve more cases in a commonly correct manner. Specify trivial=True as kwarg
-to override that.</p>
-<p class="last">As the underlying git-read-tree command takes into account the current index,
-it will be temporarily moved out of the way to assure there are no unsuspected
-interferences.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.iter_blobs">
-<tt class="descname">iter_blobs</tt><big>(</big><em>predicate=&lt;function &lt;lambda&gt; at 0x26abed8&gt;</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.iter_blobs" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Iterator yielding tuples of Blob objects and stages, tuple(stage, Blob)</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>predicate</em> &#8211; Function(t) returning True if tuple(stage, Blob) should be yielded by the
-iterator. A default filter, the BlobFilter, allows you to yield blobs
-only if they match a given list of paths.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.merge_tree">
-<tt class="descname">merge_tree</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.merge_tree" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.move">
-<tt class="descname">move</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.move" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="classmethod">
-<dt id="git.index.base.IndexFile.new">
-<em class="property">classmethod </em><tt class="descname">new</tt><big>(</big><em>repo</em>, <em>*tree_sha</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.new" title="Permalink to this definition">¶</a></dt>
-<dd><p>Merge the given treeish revisions into a new index which is returned.
-This method behaves like git-read-tree &#8211;aggressive when doing the merge.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>repo</em> &#8211; The repository treeish are located in.</li>
-<li><em>tree_sha</em> &#8211; 20 byte or 40 byte tree sha or tree objects</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">New IndexFile instance. Its path will be undefined.
-If you intend to write such a merged Index, supply an alternate file_path
-to its &#8216;write&#8217; method.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.base.IndexFile.path">
-<tt class="descname">path</tt><a class="headerlink" href="#git.index.base.IndexFile.path" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Path to the index file we are representing</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.remove">
-<tt class="descname">remove</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.remove" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.base.IndexFile.repo">
-<tt class="descname">repo</tt><a class="headerlink" href="#git.index.base.IndexFile.repo" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.reset">
-<tt class="descname">reset</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.reset" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.resolve_blobs">
-<tt class="descname">resolve_blobs</tt><big>(</big><em>iter_blobs</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.resolve_blobs" title="Permalink to this definition">¶</a></dt>
-<dd><p>Resolve the blobs given in blob iterator. This will effectively remove the
-index entries of the respective path at all non-null stages and add the given
-blob as new stage null blob.</p>
-<p>For each path there may only be one blob, otherwise a ValueError will be raised
-claiming the path is already at stage 0.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name" colspan="2">Raises ValueError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">if one of the blobs already existed at stage 0</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">self</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">You will have to write the index manually once you are done, i.e.
-index.resolve_blobs(blobs).write()</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.unmerged_blobs">
-<tt class="descname">unmerged_blobs</tt><big>(</big><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.unmerged_blobs" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Iterator yielding dict(path : list( tuple( stage, Blob, ...))), being
-a dictionary associating a path in the index with a list containing
-sorted stage/blob pairs</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">Blobs that have been removed in one side simply do not exist in the
-given stage. I.e. a file removed on the &#8216;other&#8217; branch whose entries
-are at stage 3 will not have a stage 3 entry.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.update">
-<tt class="descname">update</tt><big>(</big><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.update" title="Permalink to this definition">¶</a></dt>
-<dd><p>Reread the contents of our index file, discarding all cached information
-we might have.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">This is a possibly dangerious operations as it will discard your changes
-to index.entries</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">self</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.base.IndexFile.version">
-<tt class="descname">version</tt><a class="headerlink" href="#git.index.base.IndexFile.version" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.write">
-<tt class="descname">write</tt><big>(</big><em>file_path=None</em>, <em>ignore_tree_extension_data=False</em><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.write" title="Permalink to this definition">¶</a></dt>
-<dd><p>Write the current state to our file path or to the given one</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>file_path</em> &#8211; If None, we will write to our stored file path from which we have
-been initialized. Otherwise we write to the given file path.
-Please note that this will change the file_path of this index to
-the one you gave.</li>
-<li><em>ignore_tree_extension_data</em> &#8211; If True, the TREE type extension data read in the index will not
-be written to disk. Use this if you have altered the index and
-would like to use git-write-tree afterwards to create a tree
-representing your written changes.
-If this data is present in the written index, git-write-tree
-will instead write the stored/cached tree.
-Alternatively, use IndexFile.write_tree() to handle this case
-automatically</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">self</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.index.base.IndexFile.write_tree">
-<tt class="descname">write_tree</tt><big>(</big><big>)</big><a class="headerlink" href="#git.index.base.IndexFile.write_tree" title="Permalink to this definition">¶</a></dt>
-<dd><p>Writes this index to a corresponding Tree object into the repository&#8217;s
-object database and return it.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Tree object representing this index</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">The tree will be written even if one or more objects the tree refers to
-does not yet exist in the object database. This could happen if you added
-Entries to the index directly.</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises ValueError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">if there are no entries in the cache</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises UnmergedEntriesError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body"></td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="exception">
-<dt id="git.index.base.CheckoutError">
-<em class="property">exception </em><tt class="descclassname">git.index.base.</tt><tt class="descname">CheckoutError</tt><big>(</big><em>message</em>, <em>failed_files</em>, <em>valid_files</em>, <em>failed_reasons</em><big>)</big><a class="headerlink" href="#git.index.base.CheckoutError" title="Permalink to this definition">¶</a></dt>
-<dd><p>Thrown if a file could not be checked out from the index as it contained
-changes.</p>
-<p>The .failed_files attribute contains a list of relative paths that failed
-to be checked out as they contained changes that did not exist in the index.</p>
-<p>The .failed_reasons attribute contains a string informing about the actual
-cause of the issue.</p>
-<p>The .valid_files attribute contains a list of relative paths to files that
-were checked out successfully and hence match the version stored in the
-index</p>
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.index.fun">
-<h2>Index.Functions<a class="headerlink" href="#module-git.index.fun" title="Permalink to this headline">¶</a></h2>
-<p>Contains standalone functions to accompany the index implementation and make it
-more versatile</p>
-<dl class="function">
-<dt id="git.index.fun.write_cache">
-<tt class="descclassname">git.index.fun.</tt><tt class="descname">write_cache</tt><big>(</big><em>entries</em>, <em>stream</em>, <em>extension_data=None</em>, <em>ShaStreamCls=&lt;class 'git.util.IndexFileSHA1Writer'&gt;</em><big>)</big><a class="headerlink" href="#git.index.fun.write_cache" title="Permalink to this definition">¶</a></dt>
-<dd><p>Write the cache represented by entries to a stream</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
-<li><em>entries</em> &#8211; <strong>sorted</strong> list of entries</li>
-<li><em>stream</em> &#8211; stream to wrap into the AdapterStreamCls - it is used for
-final output.</li>
-<li><em>ShaStreamCls</em> &#8211; Type to use when writing to the stream. It produces a sha
-while writing to it, before the data is passed on to the wrapped stream</li>
-<li><em>extension_data</em> &#8211; any kind of data to write as a trailer, it must begin
-a 4 byte identifier, followed by its size ( 4 bytes )</li>
-</ul>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.index.fun.read_cache">
-<tt class="descclassname">git.index.fun.</tt><tt class="descname">read_cache</tt><big>(</big><em>stream</em><big>)</big><a class="headerlink" href="#git.index.fun.read_cache" title="Permalink to this definition">¶</a></dt>
-<dd><p>Read a cache file from the given stream
-:return: tuple(version, entries_dict, extension_data, content_sha)</p>
-<blockquote>
-<ul>
-<li><p class="first">version is the integer version number</p>
-</li>
-<li><dl class="first docutils">
-<dt>entries dict is a dictionary which maps IndexEntry instances to a path</dt>
-<dd><p class="first last">at a stage</p>
-</dd>
-</dl>
-</li>
-<li><p class="first">extension_data is &#8216;&#8217; or 4 bytes of type + 4 bytes of size + size bytes</p>
-</li>
-<li><p class="first">content_sha is a 20 byte sha on all cache file contents</p>
-</li>
-</ul>
-</blockquote>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.index.fun.write_tree_from_cache">
-<tt class="descclassname">git.index.fun.</tt><tt class="descname">write_tree_from_cache</tt><big>(</big><em>entries</em>, <em>odb</em>, <em>sl</em>, <em>si=0</em><big>)</big><a class="headerlink" href="#git.index.fun.write_tree_from_cache" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a tree from the given sorted list of entries and put the respective
-trees into the given object database</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>entries</em> &#8211; <strong>sorted</strong> list of IndexEntries</li>
-<li><em>odb</em> &#8211; object database to store the trees in</li>
-<li><em>si</em> &#8211; start index at which we should start creating subtrees</li>
-<li><em>sl</em> &#8211; slice indicating the range we should process on the entries list</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">tuple(binsha, list(tree_entry, ...)) a tuple of a sha and a list of
-tree entries being a tuple of hexsha, mode, name</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.index.fun.entry_key">
-<tt class="descclassname">git.index.fun.</tt><tt class="descname">entry_key</tt><big>(</big><em>*entry</em><big>)</big><a class="headerlink" href="#git.index.fun.entry_key" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Key suitable to be used for the index.entries dictionary</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>entry</em> &#8211; One instance of type BaseIndexEntry or the path and the stage</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.index.fun.stat_mode_to_index_mode">
-<tt class="descclassname">git.index.fun.</tt><tt class="descname">stat_mode_to_index_mode</tt><big>(</big><em>mode</em><big>)</big><a class="headerlink" href="#git.index.fun.stat_mode_to_index_mode" title="Permalink to this definition">¶</a></dt>
-<dd>Convert the given mode from a stat call to the corresponding index mode
-and return it</dd></dl>
-
-</div>
-<div class="section" id="module-git.index.typ">
-<h2>Index.Types<a class="headerlink" href="#module-git.index.typ" title="Permalink to this headline">¶</a></h2>
-<p>Module with additional types used by the index</p>
-<dl class="class">
-<dt id="git.index.typ.BlobFilter">
-<em class="property">class </em><tt class="descclassname">git.index.typ.</tt><tt class="descname">BlobFilter</tt><big>(</big><em>paths</em><big>)</big><a class="headerlink" href="#git.index.typ.BlobFilter" title="Permalink to this definition">¶</a></dt>
-<dd><p>Predicate to be used by iter_blobs allowing to filter only return blobs which
-match the given list of directories or files.</p>
-<p>The given paths are given relative to the repository.</p>
-<dl class="attribute">
-<dt id="git.index.typ.BlobFilter.paths">
-<tt class="descname">paths</tt><a class="headerlink" href="#git.index.typ.BlobFilter.paths" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.index.typ.BaseIndexEntry">
-<em class="property">class </em><tt class="descclassname">git.index.typ.</tt><tt class="descname">BaseIndexEntry</tt><a class="headerlink" href="#git.index.typ.BaseIndexEntry" title="Permalink to this definition">¶</a></dt>
-<dd><p>Small Brother of an index entry which can be created to describe changes
-done to the index in which case plenty of additional information is not requried.</p>
-<p>As the first 4 data members match exactly to the IndexEntry type, methods
-expecting a BaseIndexEntry can also handle full IndexEntries even if they
-use numeric indices for performance reasons.</p>
-<dl class="attribute">
-<dt id="git.index.typ.BaseIndexEntry.binsha">
-<tt class="descname">binsha</tt><a class="headerlink" href="#git.index.typ.BaseIndexEntry.binsha" title="Permalink to this definition">¶</a></dt>
-<dd>binary sha of the blob</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.BaseIndexEntry.flags">
-<tt class="descname">flags</tt><a class="headerlink" href="#git.index.typ.BaseIndexEntry.flags" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">flags stored with this entry</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.index.typ.BaseIndexEntry.from_blob">
-<em class="property">classmethod </em><tt class="descname">from_blob</tt><big>(</big><em>blob</em>, <em>stage=0</em><big>)</big><a class="headerlink" href="#git.index.typ.BaseIndexEntry.from_blob" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Fully equipped BaseIndexEntry at the given stage</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.BaseIndexEntry.hexsha">
-<tt class="descname">hexsha</tt><a class="headerlink" href="#git.index.typ.BaseIndexEntry.hexsha" title="Permalink to this definition">¶</a></dt>
-<dd>hex version of our sha</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.BaseIndexEntry.mode">
-<tt class="descname">mode</tt><a class="headerlink" href="#git.index.typ.BaseIndexEntry.mode" title="Permalink to this definition">¶</a></dt>
-<dd>File Mode, compatible to stat module constants</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.BaseIndexEntry.path">
-<tt class="descname">path</tt><a class="headerlink" href="#git.index.typ.BaseIndexEntry.path" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">our path relative to the repository working tree root</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.BaseIndexEntry.stage">
-<tt class="descname">stage</tt><a class="headerlink" href="#git.index.typ.BaseIndexEntry.stage" title="Permalink to this definition">¶</a></dt>
-<dd><p>Stage of the entry, either:</p>
-<blockquote>
-<ul class="simple">
-<li>0 = default stage</li>
-<li>1 = stage before a merge or common ancestor entry in case of a 3 way merge</li>
-<li>2 = stage of entries from the &#8216;left&#8217; side of the merge</li>
-<li>3 = stage of entries from the right side of the merge</li>
-</ul>
-</blockquote>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">For more information, see <a class="reference external" href="http://www.kernel.org/pub/software/scm/git/docs/git-read-tree.html">http://www.kernel.org/pub/software/scm/git/docs/git-read-tree.html</a></td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.index.typ.BaseIndexEntry.to_blob">
-<tt class="descname">to_blob</tt><big>(</big><em>repo</em><big>)</big><a class="headerlink" href="#git.index.typ.BaseIndexEntry.to_blob" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Blob using the information of this index entry</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.index.typ.IndexEntry">
-<em class="property">class </em><tt class="descclassname">git.index.typ.</tt><tt class="descname">IndexEntry</tt><a class="headerlink" href="#git.index.typ.IndexEntry" title="Permalink to this definition">¶</a></dt>
-<dd><p>Allows convenient access to IndexEntry data without completely unpacking it.</p>
-<p>Attributes usully accessed often are cached in the tuple whereas others are
-unpacked on demand.</p>
-<p>See the properties for a mapping between names and tuple indices.</p>
-<dl class="attribute">
-<dt id="git.index.typ.IndexEntry.ctime">
-<tt class="descname">ctime</tt><a class="headerlink" href="#git.index.typ.IndexEntry.ctime" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Tuple(int_time_seconds_since_epoch, int_nano_seconds) of the
-file&#8217;s creation time</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.IndexEntry.dev">
-<tt class="descname">dev</tt><a class="headerlink" href="#git.index.typ.IndexEntry.dev" title="Permalink to this definition">¶</a></dt>
-<dd>Device ID</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.index.typ.IndexEntry.from_base">
-<em class="property">classmethod </em><tt class="descname">from_base</tt><big>(</big><em>base</em><big>)</big><a class="headerlink" href="#git.index.typ.IndexEntry.from_base" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Minimal entry as created from the given BaseIndexEntry instance.
-Missing values will be set to null-like values</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>base</em> &#8211; Instance of type BaseIndexEntry</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.index.typ.IndexEntry.from_blob">
-<em class="property">classmethod </em><tt class="descname">from_blob</tt><big>(</big><em>blob</em>, <em>stage=0</em><big>)</big><a class="headerlink" href="#git.index.typ.IndexEntry.from_blob" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Minimal entry resembling the given blob object</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.IndexEntry.gid">
-<tt class="descname">gid</tt><a class="headerlink" href="#git.index.typ.IndexEntry.gid" title="Permalink to this definition">¶</a></dt>
-<dd>Group ID</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.IndexEntry.inode">
-<tt class="descname">inode</tt><a class="headerlink" href="#git.index.typ.IndexEntry.inode" title="Permalink to this definition">¶</a></dt>
-<dd>Inode ID</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.IndexEntry.mtime">
-<tt class="descname">mtime</tt><a class="headerlink" href="#git.index.typ.IndexEntry.mtime" title="Permalink to this definition">¶</a></dt>
-<dd>See ctime property, but returns modification time</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.IndexEntry.size">
-<tt class="descname">size</tt><a class="headerlink" href="#git.index.typ.IndexEntry.size" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Uncompressed size of the blob</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.typ.IndexEntry.uid">
-<tt class="descname">uid</tt><a class="headerlink" href="#git.index.typ.IndexEntry.uid" title="Permalink to this definition">¶</a></dt>
-<dd>User ID</dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.index.util">
-<h2>Index.Util<a class="headerlink" href="#module-git.index.util" title="Permalink to this headline">¶</a></h2>
-<p>Module containing index utilities</p>
-<dl class="class">
-<dt id="git.index.util.TemporaryFileSwap">
-<em class="property">class </em><tt class="descclassname">git.index.util.</tt><tt class="descname">TemporaryFileSwap</tt><big>(</big><em>file_path</em><big>)</big><a class="headerlink" href="#git.index.util.TemporaryFileSwap" title="Permalink to this definition">¶</a></dt>
-<dd><p>Utility class moving a file to a temporary location within the same directory
-and moving it back on to where on object deletion.</p>
-<dl class="attribute">
-<dt id="git.index.util.TemporaryFileSwap.file_path">
-<tt class="descname">file_path</tt><a class="headerlink" href="#git.index.util.TemporaryFileSwap.file_path" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.index.util.TemporaryFileSwap.tmp_file_path">
-<tt class="descname">tmp_file_path</tt><a class="headerlink" href="#git.index.util.TemporaryFileSwap.tmp_file_path" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-<dl class="function">
-<dt id="git.index.util.post_clear_cache">
-<tt class="descclassname">git.index.util.</tt><tt class="descname">post_clear_cache</tt><big>(</big><em>func</em><big>)</big><a class="headerlink" href="#git.index.util.post_clear_cache" title="Permalink to this definition">¶</a></dt>
-<dd><p>Decorator for functions that alter the index using the git command. This would
-invalidate our possibly existing entries dictionary which is why it must be
-deleted to allow it to be lazily reread later.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">This decorator will not be required once all functions are implemented
-natively which in fact is possible, but probably not feasible performance wise.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.index.util.default_index">
-<tt class="descclassname">git.index.util.</tt><tt class="descname">default_index</tt><big>(</big><em>func</em><big>)</big><a class="headerlink" href="#git.index.util.default_index" title="Permalink to this definition">¶</a></dt>
-<dd>Decorator assuring the wrapped method may only run if we are the default
-repository index. This is as we rely on git commands that operate
-on that index only.</dd></dl>
-
-<dl class="function">
-<dt id="git.index.util.git_working_dir">
-<tt class="descclassname">git.index.util.</tt><tt class="descname">git_working_dir</tt><big>(</big><em>func</em><big>)</big><a class="headerlink" href="#git.index.util.git_working_dir" title="Permalink to this definition">¶</a></dt>
-<dd>Decorator which changes the current working dir to the one of the git
-repository in order to assure relative paths are handled correctly</dd></dl>
-
-</div>
-<div class="section" id="module-git.cmd">
-<h2>GitCmd<a class="headerlink" href="#module-git.cmd" title="Permalink to this headline">¶</a></h2>
-<dl class="class">
-<dt id="git.cmd.Git">
-<em class="property">class </em><tt class="descclassname">git.cmd.</tt><tt class="descname">Git</tt><big>(</big><em>working_dir=None</em><big>)</big><a class="headerlink" href="#git.cmd.Git" title="Permalink to this definition">¶</a></dt>
-<dd><p>The Git class manages communication with the Git binary.</p>
-<p>It provides a convenient interface to calling the Git binary, such as in:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">g</span> <span class="o">=</span> <span class="n">Git</span><span class="p">(</span> <span class="n">git_dir</span> <span class="p">)</span>
-<span class="n">g</span><span class="o">.</span><span class="n">init</span><span class="p">()</span> <span class="c"># calls &#39;git init&#39; program</span>
-<span class="n">rval</span> <span class="o">=</span> <span class="n">g</span><span class="o">.</span><span class="n">ls_files</span><span class="p">()</span> <span class="c"># calls &#39;git ls-files&#39; program</span>
-</pre></div>
-</div>
-<dl class="docutils">
-<dt><tt class="docutils literal"><span class="pre">Debugging</span></tt></dt>
-<dd>Set the GIT_PYTHON_TRACE environment variable print each invocation
-of the command to stdout.
-Set its value to &#8216;full&#8217; to see details about the returned values.</dd>
-</dl>
-<dl class="class">
-<dt id="git.cmd.Git.AutoInterrupt">
-<em class="property">class </em><tt class="descname">AutoInterrupt</tt><big>(</big><em>proc</em>, <em>args</em><big>)</big><a class="headerlink" href="#git.cmd.Git.AutoInterrupt" title="Permalink to this definition">¶</a></dt>
-<dd><p>Kill/Interrupt the stored process instance once this instance goes out of scope. It is
-used to prevent processes piling up in case iterators stop reading.
-Besides all attributes are wired through to the contained process object.</p>
-<p>The wait method was overridden to perform automatic status code checking
-and possibly raise.</p>
-<dl class="attribute">
-<dt id="git.cmd.Git.AutoInterrupt.args">
-<tt class="descname">args</tt><a class="headerlink" href="#git.cmd.Git.AutoInterrupt.args" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.cmd.Git.AutoInterrupt.proc">
-<tt class="descname">proc</tt><a class="headerlink" href="#git.cmd.Git.AutoInterrupt.proc" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.AutoInterrupt.wait">
-<tt class="descname">wait</tt><big>(</big><big>)</big><a class="headerlink" href="#git.cmd.Git.AutoInterrupt.wait" title="Permalink to this definition">¶</a></dt>
-<dd><p>Wait for the process and return its status code.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name" colspan="2">Raises GitCommandError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">if the return status is not 0</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.cmd.Git.CatFileContentStream">
-<em class="property">class </em><tt class="descclassname">Git.</tt><tt class="descname">CatFileContentStream</tt><big>(</big><em>size</em>, <em>stream</em><big>)</big><a class="headerlink" href="#git.cmd.Git.CatFileContentStream" title="Permalink to this definition">¶</a></dt>
-<dd><p>Object representing a sized read-only stream returning the contents of
-an object.
-It behaves like a stream, but counts the data read and simulates an empty
-stream once our sized content region is empty.
-If not all data is read to the end of the objects&#8217;s lifetime, we read the
-rest to assure the underlying stream continues to work</p>
-<dl class="method">
-<dt id="git.cmd.Git.CatFileContentStream.next">
-<tt class="descname">next</tt><big>(</big><big>)</big><a class="headerlink" href="#git.cmd.Git.CatFileContentStream.next" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.CatFileContentStream.read">
-<tt class="descname">read</tt><big>(</big><em>size=-1</em><big>)</big><a class="headerlink" href="#git.cmd.Git.CatFileContentStream.read" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.CatFileContentStream.readline">
-<tt class="descname">readline</tt><big>(</big><em>size=-1</em><big>)</big><a class="headerlink" href="#git.cmd.Git.CatFileContentStream.readline" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.CatFileContentStream.readlines">
-<tt class="descname">readlines</tt><big>(</big><em>size=-1</em><big>)</big><a class="headerlink" href="#git.cmd.Git.CatFileContentStream.readlines" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.cmd.Git.cat_file_all">
-<tt class="descclassname">Git.</tt><tt class="descname">cat_file_all</tt><a class="headerlink" href="#git.cmd.Git.cat_file_all" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.cmd.Git.cat_file_header">
-<tt class="descclassname">Git.</tt><tt class="descname">cat_file_header</tt><a class="headerlink" href="#git.cmd.Git.cat_file_header" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.clear_cache">
-<tt class="descclassname">Git.</tt><tt class="descname">clear_cache</tt><big>(</big><big>)</big><a class="headerlink" href="#git.cmd.Git.clear_cache" title="Permalink to this definition">¶</a></dt>
-<dd><p>Clear all kinds of internal caches to release resources.</p>
-<p>Currently persistent commands will be interrupted.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">self</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.execute">
-<tt class="descclassname">Git.</tt><tt class="descname">execute</tt><big>(</big><em>command</em>, <em>istream=None</em>, <em>with_keep_cwd=False</em>, <em>with_extended_output=False</em>, <em>with_exceptions=True</em>, <em>as_process=False</em>, <em>output_stream=None</em>, <em>**subprocess_kwargs</em><big>)</big><a class="headerlink" href="#git.cmd.Git.execute" title="Permalink to this definition">¶</a></dt>
-<dd><p>Handles executing the command on the shell and consumes and returns
-the returned information (stdout)</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>command</em> &#8211; The command argument list to execute.
-It should be a string, or a sequence of program arguments. The
-program to execute is the first item in the args sequence or string.</li>
-<li><em>istream</em> &#8211; Standard input filehandle passed to subprocess.Popen.</li>
-<li><em>with_keep_cwd</em> &#8211; Whether to use the current working directory from os.getcwd().
-The cmd otherwise uses its own working_dir that it has been initialized
-with if possible.</li>
-<li><em>with_extended_output</em> &#8211; Whether to return a (status, stdout, stderr) tuple.</li>
-<li><em>with_exceptions</em> &#8211; Whether to raise an exception when git returns a non-zero status.</li>
-<li><em>as_process</em> &#8211; Whether to return the created process instance directly from which
-streams can be read on demand. This will render with_extended_output and
-with_exceptions ineffective - the caller will have
-to deal with the details himself.
-It is important to note that the process will be placed into an AutoInterrupt
-wrapper that will interrupt the process once it goes out of scope. If you
-use the command in iterators, you should pass the whole process instance
-instead of a single stream.</li>
-<li><em>output_stream</em> &#8211; If set to a file-like object, data produced by the git command will be
-output to the given stream directly.
-This feature only has any effect if as_process is False. Processes will
-always be created with a pipe due to issues with subprocess.
-This merely is a workaround as data will be copied from the
-output pipe to the given output stream directly.</li>
-<li><em>subprocess_kwargs</em> &#8211; Keyword arguments to be passed to subprocess.Popen. Please note that
-some of the valid kwargs are already set by this method, the ones you
-specify may not be the same ones.</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><ul class="first simple">
-<li>str(output) if extended_output = False (Default)</li>
-<li>tuple(int(status), str(stdout), str(stderr)) if extended_output = True</li>
-</ul>
-<p>if ouput_stream is True, the stdout value will be your output stream:
-* output_stream if extended_output = False
-* tuple(int(status), output_stream, str(stderr)) if extended_output = True</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises GitCommandError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body"></td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">If you add additional keyword arguments to the signature of this method,
-you must update the execute_kwargs tuple housed in this module.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.get_object_data">
-<tt class="descclassname">Git.</tt><tt class="descname">get_object_data</tt><big>(</big><em>ref</em><big>)</big><a class="headerlink" href="#git.cmd.Git.get_object_data" title="Permalink to this definition">¶</a></dt>
-<dd>As get_object_header, but returns object data as well
-:return: (hexsha, type_string, size_as_int,data_string)
-:note: not threadsafe</dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.get_object_header">
-<tt class="descclassname">Git.</tt><tt class="descname">get_object_header</tt><big>(</big><em>ref</em><big>)</big><a class="headerlink" href="#git.cmd.Git.get_object_header" title="Permalink to this definition">¶</a></dt>
-<dd><p>Use this method to quickly examine the type and size of the object behind
-the given ref.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">The method will only suffer from the costs of command invocation
-once and reuses the command in subsequent calls.</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">(hexsha, type_string, size_as_int)</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.stream_object_data">
-<tt class="descclassname">Git.</tt><tt class="descname">stream_object_data</tt><big>(</big><em>ref</em><big>)</big><a class="headerlink" href="#git.cmd.Git.stream_object_data" title="Permalink to this definition">¶</a></dt>
-<dd><p>As get_object_header, but returns the data as a stream
-:return: (hexsha, type_string, size_as_int, stream)
-:note: This method is not threadsafe, you need one independent Command instance</p>
-<blockquote>
-per thread to be safe !</blockquote>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.cmd.Git.transform_kwargs">
-<tt class="descclassname">Git.</tt><tt class="descname">transform_kwargs</tt><big>(</big><em>**kwargs</em><big>)</big><a class="headerlink" href="#git.cmd.Git.transform_kwargs" title="Permalink to this definition">¶</a></dt>
-<dd>Transforms Python style kwargs into git command line options.</dd></dl>
-
-<dl class="attribute">
-<dt id="git.cmd.Git.working_dir">
-<tt class="descclassname">Git.</tt><tt class="descname">working_dir</tt><a class="headerlink" href="#git.cmd.Git.working_dir" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Git directory we are working on</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.config">
-<h2>Config<a class="headerlink" href="#module-git.config" title="Permalink to this headline">¶</a></h2>
-<p>Module containing module parser implementation able to properly read and write
-configuration files</p>
-<dl class="attribute">
-<dt id="git.config.GitConfigParser">
-<tt class="descclassname">git.config.</tt><tt class="descname">GitConfigParser</tt><a class="headerlink" href="#git.config.GitConfigParser" title="Permalink to this definition">¶</a></dt>
-<dd>alias of <tt class="xref docutils literal"><span class="pre">write</span></tt></dd></dl>
-
-</div>
-<div class="section" id="module-git.diff">
-<h2>Diff<a class="headerlink" href="#module-git.diff" title="Permalink to this headline">¶</a></h2>
-<dl class="class">
-<dt id="git.diff.Diffable">
-<em class="property">class </em><tt class="descclassname">git.diff.</tt><tt class="descname">Diffable</tt><a class="headerlink" href="#git.diff.Diffable" title="Permalink to this definition">¶</a></dt>
-<dd><p>Common interface for all object that can be diffed against another object of compatible type.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">Subclasses require a repo member as it is the case for Object instances, for practical
-reasons we do not derive from Object.</td>
-</tr>
-</tbody>
-</table>
-<dl class="class">
-<dt id="git.diff.Diffable.Index">
-<em class="property">class </em><tt class="descname">Index</tt><a class="headerlink" href="#git.diff.Diffable.Index" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.diff.Diffable.diff">
-<tt class="descclassname">Diffable.</tt><tt class="descname">diff</tt><big>(</big><em>other=&lt;class 'git.diff.Index'&gt;</em>, <em>paths=None</em>, <em>create_patch=False</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.diff.Diffable.diff" title="Permalink to this definition">¶</a></dt>
-<dd><p>Creates diffs between two items being trees, trees and index or an
-index and the working tree.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>other</em> &#8211; Is the item to compare us with.
-If None, we will be compared to the working tree.
-If Treeish, it will be compared against the respective tree
-If Index ( type ), it will be compared against the index.
-It defaults to Index to assure the method will not by-default fail
-on bare repositories.</li>
-<li><em>paths</em> &#8211; is a list of paths or a single path to limit the diff to.
-It will only include at least one of the givne path or paths.</li>
-<li><em>create_patch</em> &#8211; If True, the returned Diff contains a detailed patch that if applied
-makes the self to other. Patches are somwhat costly as blobs have to be read
-and diffed.</li>
-<li><em>kwargs</em> &#8211; Additional arguments passed to git-diff, such as
-R=True to swap both sides of the diff.</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">git.DiffIndex</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first">Rename detection will only work if create_patch is True.</p>
-<p class="last">On a bare repository, &#8216;other&#8217; needs to be provided as Index or as
-as Tree/Commit, or a git command error will occour</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.diff.DiffIndex">
-<em class="property">class </em><tt class="descclassname">git.diff.</tt><tt class="descname">DiffIndex</tt><a class="headerlink" href="#git.diff.DiffIndex" title="Permalink to this definition">¶</a></dt>
-<dd><p>Implements an Index for diffs, allowing a list of Diffs to be queried by
-the diff properties.</p>
-<p>The class improves the diff handling convenience</p>
-<dl class="method">
-<dt id="git.diff.DiffIndex.iter_change_type">
-<tt class="descname">iter_change_type</tt><big>(</big><em>change_type</em><big>)</big><a class="headerlink" href="#git.diff.DiffIndex.iter_change_type" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">iterator yieling Diff instances that match the given change_type</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>change_type</em> &#8211; <p>Member of DiffIndex.change_type, namely:</p>
-<ul class="simple">
-<li>&#8216;A&#8217; for added paths</li>
-<li>&#8216;D&#8217; for deleted paths</li>
-<li>&#8216;R&#8217; for renamed paths</li>
-<li>&#8216;M&#8217; for paths with modified data</li>
-</ul>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.diff.Diff">
-<em class="property">class </em><tt class="descclassname">git.diff.</tt><tt class="descname">Diff</tt><big>(</big><em>repo</em>, <em>a_path</em>, <em>b_path</em>, <em>a_blob_id</em>, <em>b_blob_id</em>, <em>a_mode</em>, <em>b_mode</em>, <em>new_file</em>, <em>deleted_file</em>, <em>rename_from</em>, <em>rename_to</em>, <em>diff</em><big>)</big><a class="headerlink" href="#git.diff.Diff" title="Permalink to this definition">¶</a></dt>
-<dd><p>A Diff contains diff information between two Trees.</p>
-<p>It contains two sides a and b of the diff, members are prefixed with
-&#8220;a&#8221; and &#8220;b&#8221; respectively to inidcate that.</p>
-<p>Diffs keep information about the changed blob objects, the file mode, renames,
-deletions and new files.</p>
-<p>There are a few cases where None has to be expected as member variable value:</p>
-<p><tt class="docutils literal"><span class="pre">New</span> <span class="pre">File</span></tt>:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">a_mode</span> <span class="ow">is</span> <span class="bp">None</span>
-<span class="n">a_blob</span> <span class="ow">is</span> <span class="bp">None</span>
-</pre></div>
-</div>
-<p><tt class="docutils literal"><span class="pre">Deleted</span> <span class="pre">File</span></tt>:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">b_mode</span> <span class="ow">is</span> <span class="bp">None</span>
-<span class="n">b_blob</span> <span class="ow">is</span> <span class="bp">None</span>
-</pre></div>
-</div>
-<p><tt class="docutils literal"><span class="pre">Working</span> <span class="pre">Tree</span> <span class="pre">Blobs</span></tt></p>
-<blockquote>
-When comparing to working trees, the working tree blob will have a null hexsha
-as a corresponding object does not yet exist. The mode will be null as well.
-But the path will be available though.
-If it is listed in a diff the working tree version of the file must
-be different to the version in the index or tree, and hence has been modified.</blockquote>
-<dl class="attribute">
-<dt id="git.diff.Diff.a_blob">
-<tt class="descname">a_blob</tt><a class="headerlink" href="#git.diff.Diff.a_blob" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.diff.Diff.a_mode">
-<tt class="descname">a_mode</tt><a class="headerlink" href="#git.diff.Diff.a_mode" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.diff.Diff.b_blob">
-<tt class="descname">b_blob</tt><a class="headerlink" href="#git.diff.Diff.b_blob" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.diff.Diff.b_mode">
-<tt class="descname">b_mode</tt><a class="headerlink" href="#git.diff.Diff.b_mode" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.diff.Diff.deleted_file">
-<tt class="descname">deleted_file</tt><a class="headerlink" href="#git.diff.Diff.deleted_file" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.diff.Diff.diff">
-<tt class="descname">diff</tt><a class="headerlink" href="#git.diff.Diff.diff" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.diff.Diff.new_file">
-<tt class="descname">new_file</tt><a class="headerlink" href="#git.diff.Diff.new_file" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.diff.Diff.rename_from">
-<tt class="descname">rename_from</tt><a class="headerlink" href="#git.diff.Diff.rename_from" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.diff.Diff.rename_to">
-<tt class="descname">rename_to</tt><a class="headerlink" href="#git.diff.Diff.rename_to" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.diff.Diff.renamed">
-<tt class="descname">renamed</tt><a class="headerlink" href="#git.diff.Diff.renamed" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">True if the blob of our diff has been renamed</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.errors">
-<h2>Errors<a class="headerlink" href="#module-git.errors" title="Permalink to this headline">¶</a></h2>
-<p>Module containing all exceptions thrown througout the git package,</p>
-<dl class="exception">
-<dt id="git.errors.GitCommandError">
-<em class="property">exception </em><tt class="descclassname">git.errors.</tt><tt class="descname">GitCommandError</tt><big>(</big><em>command</em>, <em>status</em>, <em>stderr=None</em><big>)</big><a class="headerlink" href="#git.errors.GitCommandError" title="Permalink to this definition">¶</a></dt>
-<dd>Thrown if execution of the git command fails with non-zero status code.</dd></dl>
-
-<dl class="exception">
-<dt id="git.errors.InvalidGitRepositoryError">
-<em class="property">exception </em><tt class="descclassname">git.errors.</tt><tt class="descname">InvalidGitRepositoryError</tt><a class="headerlink" href="#git.errors.InvalidGitRepositoryError" title="Permalink to this definition">¶</a></dt>
-<dd>Thrown if the given repository appears to have an invalid format.</dd></dl>
-
-<dl class="exception">
-<dt id="git.errors.NoSuchPathError">
-<em class="property">exception </em><tt class="descclassname">git.errors.</tt><tt class="descname">NoSuchPathError</tt><a class="headerlink" href="#git.errors.NoSuchPathError" title="Permalink to this definition">¶</a></dt>
-<dd>Thrown if a path could not be access by the system.</dd></dl>
-
-</div>
-<div class="section" id="module-git.refs">
-<h2>Refs<a class="headerlink" href="#module-git.refs" title="Permalink to this headline">¶</a></h2>
-<p>Module containing all ref based objects</p>
-<dl class="class">
-<dt id="git.refs.SymbolicReference">
-<em class="property">class </em><tt class="descclassname">git.refs.</tt><tt class="descname">SymbolicReference</tt><big>(</big><em>repo</em>, <em>path</em><big>)</big><a class="headerlink" href="#git.refs.SymbolicReference" title="Permalink to this definition">¶</a></dt>
-<dd><p>Represents a special case of a reference such that this reference is symbolic.
-It does not point to a specific commit, but to another Head, which itself
-specifies a commit.</p>
-<p>A typical example for a symbolic reference is HEAD.</p>
-<dl class="attribute">
-<dt id="git.refs.SymbolicReference.commit">
-<tt class="descname">commit</tt><a class="headerlink" href="#git.refs.SymbolicReference.commit" title="Permalink to this definition">¶</a></dt>
-<dd>Query or set commits directly</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.SymbolicReference.create">
-<em class="property">classmethod </em><tt class="descname">create</tt><big>(</big><em>repo</em>, <em>path</em>, <em>reference='HEAD'</em>, <em>force=False</em><big>)</big><a class="headerlink" href="#git.refs.SymbolicReference.create" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a new symbolic reference, hence a reference pointing to another reference.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>repo</em> &#8211; Repository to create the reference in</li>
-<li><em>path</em> &#8211; full path at which the new symbolic reference is supposed to be
-created at, i.e. &#8220;NEW_HEAD&#8221; or &#8220;symrefs/my_new_symref&#8221;</li>
-<li><em>reference</em> &#8211; The reference to which the new symbolic reference should point to</li>
-<li><em>force</em> &#8211; if True, force creation even if a symbolic reference with that name already exists.
-Raise OSError otherwise</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">Newly created symbolic Reference</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Raises OSError:</th><td class="field-body"><p class="first">If a (Symbolic)Reference with the same name but different contents
-already exists.</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">This does not alter the current HEAD, index or Working Tree</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.SymbolicReference.delete">
-<em class="property">classmethod </em><tt class="descname">delete</tt><big>(</big><em>repo</em>, <em>path</em><big>)</big><a class="headerlink" href="#git.refs.SymbolicReference.delete" title="Permalink to this definition">¶</a></dt>
-<dd><p>Delete the reference at the given path</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
-<li><em>repo</em> &#8211; Repository to delete the reference from</li>
-<li><em>path</em> &#8211; Short or full path pointing to the reference, i.e. refs/myreference
-or just &#8220;myreference&#8221;, hence &#8216;refs/&#8217; is implied.
-Alternatively the symbolic reference to be deleted</li>
-</ul>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.SymbolicReference.dereference_recursive">
-<em class="property">classmethod </em><tt class="descname">dereference_recursive</tt><big>(</big><em>repo</em>, <em>ref_path</em><big>)</big><a class="headerlink" href="#git.refs.SymbolicReference.dereference_recursive" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">hexsha stored in the reference at the given ref_path, recursively dereferencing all
-intermediate references as required</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>repo</em> &#8211; the repository containing the reference at ref_path</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.SymbolicReference.from_path">
-<em class="property">classmethod </em><tt class="descname">from_path</tt><big>(</big><em>repo</em>, <em>path</em><big>)</big><a class="headerlink" href="#git.refs.SymbolicReference.from_path" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Instance of type Reference, Head, or Tag
-depending on the given path</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.SymbolicReference.is_detached">
-<tt class="descname">is_detached</tt><a class="headerlink" href="#git.refs.SymbolicReference.is_detached" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">True if we are a detached reference, hence we point to a specific commit
-instead to another reference</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.refs.SymbolicReference.is_valid">
-<tt class="descname">is_valid</tt><big>(</big><big>)</big><a class="headerlink" href="#git.refs.SymbolicReference.is_valid" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">True if the reference is valid, hence it can be read and points to
-a valid object or reference.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.SymbolicReference.iter_items">
-<em class="property">classmethod </em><tt class="descname">iter_items</tt><big>(</big><em>repo</em>, <em>common_path=None</em><big>)</big><a class="headerlink" href="#git.refs.SymbolicReference.iter_items" title="Permalink to this definition">¶</a></dt>
-<dd><p>Find all refs in the repository</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>repo</em> &#8211; is the Repo</li>
-<li><em>common_path</em> &#8211; Optional keyword argument to the path which is to be shared by all
-returned Ref objects.
-Defaults to class specific portion if None assuring that only
-refs suitable for the actual class are returned.</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">git.SymbolicReference[], each of them is guaranteed to be a symbolic
-ref which is not detached.</p>
-<p class="last">List is lexigraphically sorted
-The returned objects represent actual subclasses, such as Head or TagReference</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.SymbolicReference.name">
-<tt class="descname">name</tt><a class="headerlink" href="#git.refs.SymbolicReference.name" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">In case of symbolic references, the shortest assumable name
-is the path itself.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.SymbolicReference.path">
-<tt class="descname">path</tt><a class="headerlink" href="#git.refs.SymbolicReference.path" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.SymbolicReference.ref">
-<tt class="descname">ref</tt><a class="headerlink" href="#git.refs.SymbolicReference.ref" title="Permalink to this definition">¶</a></dt>
-<dd>Returns the Reference we point to</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.SymbolicReference.reference">
-<tt class="descname">reference</tt><a class="headerlink" href="#git.refs.SymbolicReference.reference" title="Permalink to this definition">¶</a></dt>
-<dd>Returns the Reference we point to</dd></dl>
-
-<dl class="method">
-<dt id="git.refs.SymbolicReference.rename">
-<tt class="descname">rename</tt><big>(</big><em>new_path</em>, <em>force=False</em><big>)</big><a class="headerlink" href="#git.refs.SymbolicReference.rename" title="Permalink to this definition">¶</a></dt>
-<dd><p>Rename self to a new path</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>new_path</em> &#8211; Either a simple name or a full path, i.e. new_name or features/new_name.
-The prefix refs/ is implied for references and will be set as needed.
-In case this is a symbolic ref, there is no implied prefix</li>
-<li><em>force</em> &#8211; If True, the rename will succeed even if a head with the target name
-already exists. It will be overwritten in that case</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">self</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Raises OSError:</th><td class="field-body"><p class="first last">In case a file at path but a different contents already exists</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.SymbolicReference.repo">
-<tt class="descname">repo</tt><a class="headerlink" href="#git.refs.SymbolicReference.repo" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.SymbolicReference.to_full_path">
-<em class="property">classmethod </em><tt class="descname">to_full_path</tt><big>(</big><em>path</em><big>)</big><a class="headerlink" href="#git.refs.SymbolicReference.to_full_path" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">string with a full path name which can be used to initialize
-a Reference instance, for instance by using <tt class="docutils literal"><span class="pre">Reference.from_path</span></tt></td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.refs.Reference">
-<em class="property">class </em><tt class="descclassname">git.refs.</tt><tt class="descname">Reference</tt><big>(</big><em>repo</em>, <em>path</em><big>)</big><a class="headerlink" href="#git.refs.Reference" title="Permalink to this definition">¶</a></dt>
-<dd><p>Represents a named reference to any object. Subclasses may apply restrictions though,
-i.e. Heads can only point to commits.</p>
-<dl class="classmethod">
-<dt id="git.refs.Reference.create">
-<em class="property">classmethod </em><tt class="descname">create</tt><big>(</big><em>repo</em>, <em>path</em>, <em>commit='HEAD'</em>, <em>force=False</em><big>)</big><a class="headerlink" href="#git.refs.Reference.create" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a new reference.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>repo</em> &#8211; Repository to create the reference in</li>
-<li><em>path</em> &#8211; The relative path of the reference, i.e. &#8216;new_branch&#8217; or
-feature/feature1. The path prefix &#8216;refs/&#8217; is implied if not
-given explicitly</li>
-<li><em>commit</em> &#8211; Commit to which the new reference should point, defaults to the
-current HEAD</li>
-<li><em>force</em> &#8211; if True, force creation even if a reference with that name already exists.
-Raise OSError otherwise</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">Newly created Reference</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">This does not alter the current HEAD, index or Working Tree</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.Reference.iter_items">
-<em class="property">classmethod </em><tt class="descname">iter_items</tt><big>(</big><em>repo</em>, <em>common_path=None</em><big>)</big><a class="headerlink" href="#git.refs.Reference.iter_items" title="Permalink to this definition">¶</a></dt>
-<dd>Equivalent to SymbolicReference.iter_items, but will return non-detached
-references as well.</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.Reference.name">
-<tt class="descname">name</tt><a class="headerlink" href="#git.refs.Reference.name" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">(shortest) Name of this reference - it may contain path components</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.Reference.object">
-<tt class="descname">object</tt><a class="headerlink" href="#git.refs.Reference.object" title="Permalink to this definition">¶</a></dt>
-<dd>Return the object our ref currently refers to</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.refs.HEAD">
-<em class="property">class </em><tt class="descclassname">git.refs.</tt><tt class="descname">HEAD</tt><big>(</big><em>repo</em>, <em>path='HEAD'</em><big>)</big><a class="headerlink" href="#git.refs.HEAD" title="Permalink to this definition">¶</a></dt>
-<dd><p>Special case of a Symbolic Reference as it represents the repository&#8217;s
-HEAD reference.</p>
-<dl class="method">
-<dt id="git.refs.HEAD.reset">
-<tt class="descname">reset</tt><big>(</big><em>commit='HEAD'</em>, <em>index=True</em>, <em>working_tree=False</em>, <em>paths=None</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.refs.HEAD.reset" title="Permalink to this definition">¶</a></dt>
-<dd><p>Reset our HEAD to the given commit optionally synchronizing
-the index and working tree. The reference we refer to will be set to
-commit as well.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>commit</em> &#8211; Commit object, Reference Object or string identifying a revision we
-should reset HEAD to.</li>
-<li><em>index</em> &#8211; If True, the index will be set to match the given commit. Otherwise
-it will not be touched.</li>
-<li><em>working_tree</em> &#8211; If True, the working tree will be forcefully adjusted to match the given
-commit, possibly overwriting uncommitted changes without warning.
-If working_tree is True, index must be true as well</li>
-<li><em>paths</em> &#8211; Single path or list of paths relative to the git root directory
-that are to be reset. This allows to partially reset individual files.</li>
-<li><em>kwargs</em> &#8211; Additional arguments passed to git-reset.</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">self</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.refs.Head">
-<em class="property">class </em><tt class="descclassname">git.refs.</tt><tt class="descname">Head</tt><big>(</big><em>repo</em>, <em>path</em><big>)</big><a class="headerlink" href="#git.refs.Head" title="Permalink to this definition">¶</a></dt>
-<dd><p>A Head is a named reference to a Commit. Every Head instance contains a name
-and a Commit object.</p>
-<p>Examples:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="gp">&gt;&gt;&gt; </span><span class="n">repo</span> <span class="o">=</span> <span class="n">Repo</span><span class="p">(</span><span class="s">&quot;/path/to/repo&quot;</span><span class="p">)</span>
-<span class="gp">&gt;&gt;&gt; </span><span class="n">head</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">heads</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span>
-
-<span class="gp">&gt;&gt;&gt; </span><span class="n">head</span><span class="o">.</span><span class="n">name</span>
-<span class="go">&#39;master&#39;</span>
-
-<span class="gp">&gt;&gt;&gt; </span><span class="n">head</span><span class="o">.</span><span class="n">commit</span>
-<span class="go">&lt;git.Commit &quot;1c09f116cbc2cb4100fb6935bb162daa4723f455&quot;&gt;</span>
-
-<span class="gp">&gt;&gt;&gt; </span><span class="n">head</span><span class="o">.</span><span class="n">commit</span><span class="o">.</span><span class="n">hexsha</span>
-<span class="go">&#39;1c09f116cbc2cb4100fb6935bb162daa4723f455&#39;</span>
-</pre></div>
-</div>
-<dl class="method">
-<dt id="git.refs.Head.checkout">
-<tt class="descname">checkout</tt><big>(</big><em>force=False</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.refs.Head.checkout" title="Permalink to this definition">¶</a></dt>
-<dd><p>Checkout this head by setting the HEAD to this reference, by updating the index
-to reflect the tree we point to and by updating the working tree to reflect
-the latest index.</p>
-<p>The command will fail if changed working tree files would be overwritten.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>force</em> &#8211; If True, changes to the index and the working tree will be discarded.
-If False, GitCommandError will be raised in that situation.</li>
-<li><em>kwargs</em> &#8211; Additional keyword arguments to be passed to git checkout, i.e.
-b=&#8217;new_branch&#8217; to create a new branch at the given spot.</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">The active branch after the checkout operation, usually self unless
-a new branch has been created.</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">By default it is only allowed to checkout heads - everything else
-will leave the HEAD detached which is allowed and possible, but remains
-a special state that some tools might not be able to handle.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.Head.create">
-<em class="property">classmethod </em><tt class="descname">create</tt><big>(</big><em>repo</em>, <em>path</em>, <em>commit='HEAD'</em>, <em>force=False</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.refs.Head.create" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a new head.
-:param repo: Repository to create the head in
-:param path:</p>
-<blockquote>
-The name or path of the head, i.e. &#8216;new_branch&#8217; or
-feature/feature1. The prefix refs/heads is implied.</blockquote>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>commit</em> &#8211; Commit to which the new head should point, defaults to the
-current HEAD</li>
-<li><em>force</em> &#8211; if True, force creation even if branch with that name already exists.</li>
-<li><em>kwargs</em> &#8211; Additional keyword arguments to be passed to git-branch, i.e.
-track, no-track, l</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">Newly created Head</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">This does not alter the current HEAD, index or Working Tree</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.Head.delete">
-<em class="property">classmethod </em><tt class="descname">delete</tt><big>(</big><em>repo</em>, <em>*heads</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.refs.Head.delete" title="Permalink to this definition">¶</a></dt>
-<dd><p>Delete the given heads
-:param force:</p>
-<blockquote>
-If True, the heads will be deleted even if they are not yet merged into
-the main development stream.
-Default False</blockquote>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.refs.Head.rename">
-<tt class="descname">rename</tt><big>(</big><em>new_path</em>, <em>force=False</em><big>)</big><a class="headerlink" href="#git.refs.Head.rename" title="Permalink to this definition">¶</a></dt>
-<dd><p>Rename self to a new path</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>new_path</em> &#8211; Either a simple name or a path, i.e. new_name or features/new_name.
-The prefix refs/heads is implied</li>
-<li><em>force</em> &#8211; If True, the rename will succeed even if a head with the target name
-already exists.</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">self</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">respects the ref log as git commands are used</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.refs.TagReference">
-<em class="property">class </em><tt class="descclassname">git.refs.</tt><tt class="descname">TagReference</tt><big>(</big><em>repo</em>, <em>path</em><big>)</big><a class="headerlink" href="#git.refs.TagReference" title="Permalink to this definition">¶</a></dt>
-<dd><p>Class representing a lightweight tag reference which either points to a commit
-,a tag object or any other object. In the latter case additional information,
-like the signature or the tag-creator, is available.</p>
-<p>This tag object will always point to a commit object, but may carray additional
-information in a tag object:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">tagref</span> <span class="o">=</span> <span class="n">TagReference</span><span class="o">.</span><span class="n">list_items</span><span class="p">(</span><span class="n">repo</span><span class="p">)[</span><span class="mf">0</span><span class="p">]</span>
-<span class="k">print</span> <span class="n">tagref</span><span class="o">.</span><span class="n">commit</span><span class="o">.</span><span class="n">message</span>
-<span class="k">if</span> <span class="n">tagref</span><span class="o">.</span><span class="n">tag</span> <span class="ow">is</span> <span class="ow">not</span> <span class="bp">None</span><span class="p">:</span>
- <span class="k">print</span> <span class="n">tagref</span><span class="o">.</span><span class="n">tag</span><span class="o">.</span><span class="n">message</span>
-</pre></div>
-</div>
-<dl class="attribute">
-<dt id="git.refs.TagReference.commit">
-<tt class="descname">commit</tt><a class="headerlink" href="#git.refs.TagReference.commit" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Commit object the tag ref points to</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.TagReference.create">
-<em class="property">classmethod </em><tt class="descname">create</tt><big>(</big><em>repo</em>, <em>path</em>, <em>ref='HEAD'</em>, <em>message=None</em>, <em>force=False</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.refs.TagReference.create" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a new tag reference.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>path</em> &#8211; The name of the tag, i.e. 1.0 or releases/1.0.
-The prefix refs/tags is implied</li>
-<li><em>ref</em> &#8211; A reference to the object you want to tag. It can be a commit, tree or
-blob.</li>
-<li><em>message</em> &#8211; <p>If not None, the message will be used in your tag object. This will also
-create an additional tag object that allows to obtain that information, i.e.:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">tagref</span><span class="o">.</span><span class="n">tag</span><span class="o">.</span><span class="n">message</span>
-</pre></div>
-</div>
-</li>
-<li><em>force</em> &#8211; If True, to force creation of a tag even though that tag already exists.</li>
-<li><em>kwargs</em> &#8211; Additional keyword arguments to be passed to git-tag</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">A new TagReference</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.refs.TagReference.delete">
-<em class="property">classmethod </em><tt class="descname">delete</tt><big>(</big><em>repo</em>, <em>*tags</em><big>)</big><a class="headerlink" href="#git.refs.TagReference.delete" title="Permalink to this definition">¶</a></dt>
-<dd>Delete the given existing tag or tags</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.TagReference.object">
-<tt class="descname">object</tt><a class="headerlink" href="#git.refs.TagReference.object" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">The object our ref currently refers to. Refs can be cached, they will
-always point to the actual object as it gets re-created on each query</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.TagReference.tag">
-<tt class="descname">tag</tt><a class="headerlink" href="#git.refs.TagReference.tag" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Tag object this tag ref points to or None in case
-we are a light weight tag</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.refs.RemoteReference">
-<em class="property">class </em><tt class="descclassname">git.refs.</tt><tt class="descname">RemoteReference</tt><big>(</big><em>repo</em>, <em>path</em><big>)</big><a class="headerlink" href="#git.refs.RemoteReference" title="Permalink to this definition">¶</a></dt>
-<dd><p>Represents a reference pointing to a remote head.</p>
-<dl class="classmethod">
-<dt id="git.refs.RemoteReference.delete">
-<em class="property">classmethod </em><tt class="descname">delete</tt><big>(</big><em>repo</em>, <em>*refs</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.refs.RemoteReference.delete" title="Permalink to this definition">¶</a></dt>
-<dd><p>Delete the given remote references.
-:note:</p>
-<blockquote>
-kwargs are given for compatability with the base class method as we
-should not narrow the signature.</blockquote>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.RemoteReference.remote_head">
-<tt class="descname">remote_head</tt><a class="headerlink" href="#git.refs.RemoteReference.remote_head" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Name of the remote head itself, i.e. master.</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">The returned name is usually not qualified enough to uniquely identify
-a branch</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.RemoteReference.remote_name">
-<tt class="descname">remote_name</tt><a class="headerlink" href="#git.refs.RemoteReference.remote_name" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Name of the remote we are a reference of, such as &#8216;origin&#8217; for a reference
-named &#8216;origin/master&#8217;</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.refs.Tag">
-<tt class="descclassname">git.refs.</tt><tt class="descname">Tag</tt><a class="headerlink" href="#git.refs.Tag" title="Permalink to this definition">¶</a></dt>
-<dd>alias of <a title="git.refs.TagReference" class="reference internal" href="#git.refs.TagReference"><tt class="xref docutils literal"><span class="pre">TagReference</span></tt></a></dd></dl>
-
-</div>
-<div class="section" id="module-git.remote">
-<h2>Remote<a class="headerlink" href="#module-git.remote" title="Permalink to this headline">¶</a></h2>
-<p>Module implementing a remote object allowing easy access to git remotes</p>
-<dl class="class">
-<dt id="git.remote.RemoteProgress">
-<em class="property">class </em><tt class="descclassname">git.remote.</tt><tt class="descname">RemoteProgress</tt><a class="headerlink" href="#git.remote.RemoteProgress" title="Permalink to this definition">¶</a></dt>
-<dd><p>Handler providing an interface to parse progress information emitted by git-push
-and git-fetch and to dispatch callbacks allowing subclasses to react to the progress.</p>
-<dl class="method">
-<dt id="git.remote.RemoteProgress.line_dropped">
-<tt class="descname">line_dropped</tt><big>(</big><em>line</em><big>)</big><a class="headerlink" href="#git.remote.RemoteProgress.line_dropped" title="Permalink to this definition">¶</a></dt>
-<dd>Called whenever a line could not be understood and was therefore dropped.</dd></dl>
-
-<dl class="method">
-<dt id="git.remote.RemoteProgress.update">
-<tt class="descname">update</tt><big>(</big><em>op_code</em>, <em>cur_count</em>, <em>max_count=None</em>, <em>message=''</em><big>)</big><a class="headerlink" href="#git.remote.RemoteProgress.update" title="Permalink to this definition">¶</a></dt>
-<dd><p>Called whenever the progress changes</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first last simple">
-<li><em>op_code</em> &#8211; <p>Integer allowing to be compared against Operation IDs and stage IDs.</p>
-<p>Stage IDs are BEGIN and END. BEGIN will only be set once for each Operation
-ID as well as END. It may be that BEGIN and END are set at once in case only
-one progress message was emitted due to the speed of the operation.
-Between BEGIN and END, none of these flags will be set</p>
-<p>Operation IDs are all held within the OP_MASK. Only one Operation ID will
-be active per call.</p>
-</li>
-<li><em>cur_count</em> &#8211; Current absolute count of items</li>
-<li><em>max_count</em> &#8211; The maximum count of items we expect. It may be None in case there is
-no maximum number of items or if it is (yet) unknown.</li>
-<li><em>message</em> &#8211; In case of the &#8216;WRITING&#8217; operation, it contains the amount of bytes
-transferred. It may possibly be used for other purposes as well.</li>
-</ul>
-</td>
-</tr>
-</tbody>
-</table>
-<p>You may read the contents of the current line in self._cur_line</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.remote.PushInfo">
-<em class="property">class </em><tt class="descclassname">git.remote.</tt><tt class="descname">PushInfo</tt><big>(</big><em>flags</em>, <em>local_ref</em>, <em>remote_ref_string</em>, <em>remote</em>, <em>old_commit=None</em>, <em>summary=''</em><big>)</big><a class="headerlink" href="#git.remote.PushInfo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Carries information about the result of a push operation of a single head:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">info</span> <span class="o">=</span> <span class="n">remote</span><span class="o">.</span><span class="n">push</span><span class="p">()[</span><span class="mf">0</span><span class="p">]</span>
-<span class="n">info</span><span class="o">.</span><span class="n">flags</span> <span class="c"># bitflags providing more information about the result</span>
-<span class="n">info</span><span class="o">.</span><span class="n">local_ref</span> <span class="c"># Reference pointing to the local reference that was pushed</span>
- <span class="c"># It is None if the ref was deleted.</span>
-<span class="n">info</span><span class="o">.</span><span class="n">remote_ref_string</span> <span class="c"># path to the remote reference located on the remote side</span>
-<span class="n">info</span><span class="o">.</span><span class="n">remote_ref</span> <span class="c"># Remote Reference on the local side corresponding to </span>
- <span class="c"># the remote_ref_string. It can be a TagReference as well.</span>
-<span class="n">info</span><span class="o">.</span><span class="n">old_commit</span> <span class="c"># commit at which the remote_ref was standing before we pushed</span>
- <span class="c"># it to local_ref.commit. Will be None if an error was indicated</span>
-<span class="n">info</span><span class="o">.</span><span class="n">summary</span> <span class="c"># summary line providing human readable english text about the push</span>
-</pre></div>
-</div>
-<dl class="attribute">
-<dt id="git.remote.PushInfo.flags">
-<tt class="descname">flags</tt><a class="headerlink" href="#git.remote.PushInfo.flags" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.PushInfo.local_ref">
-<tt class="descname">local_ref</tt><a class="headerlink" href="#git.remote.PushInfo.local_ref" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.PushInfo.old_commit">
-<tt class="descname">old_commit</tt><a class="headerlink" href="#git.remote.PushInfo.old_commit" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.PushInfo.remote_ref">
-<tt class="descname">remote_ref</tt><a class="headerlink" href="#git.remote.PushInfo.remote_ref" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Remote Reference or TagReference in the local repository corresponding
-to the remote_ref_string kept in this instance.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.PushInfo.remote_ref_string">
-<tt class="descname">remote_ref_string</tt><a class="headerlink" href="#git.remote.PushInfo.remote_ref_string" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.PushInfo.summary">
-<tt class="descname">summary</tt><a class="headerlink" href="#git.remote.PushInfo.summary" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.remote.FetchInfo">
-<em class="property">class </em><tt class="descclassname">git.remote.</tt><tt class="descname">FetchInfo</tt><big>(</big><em>ref</em>, <em>flags</em>, <em>note=''</em>, <em>old_commit=None</em><big>)</big><a class="headerlink" href="#git.remote.FetchInfo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Carries information about the results of a fetch operation of a single head:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">info</span> <span class="o">=</span> <span class="n">remote</span><span class="o">.</span><span class="n">fetch</span><span class="p">()[</span><span class="mf">0</span><span class="p">]</span>
-<span class="n">info</span><span class="o">.</span><span class="n">ref</span> <span class="c"># Symbolic Reference or RemoteReference to the changed </span>
- <span class="c"># remote head or FETCH_HEAD</span>
-<span class="n">info</span><span class="o">.</span><span class="n">flags</span> <span class="c"># additional flags to be &amp; with enumeration members, </span>
- <span class="c"># i.e. info.flags &amp; info.REJECTED </span>
- <span class="c"># is 0 if ref is SymbolicReference</span>
-<span class="n">info</span><span class="o">.</span><span class="n">note</span> <span class="c"># additional notes given by git-fetch intended for the user</span>
-<span class="n">info</span><span class="o">.</span><span class="n">old_commit</span> <span class="c"># if info.flags &amp; info.FORCED_UPDATE|info.FAST_FORWARD, </span>
- <span class="c"># field is set to the previous location of ref, otherwise None</span>
-</pre></div>
-</div>
-<dl class="attribute">
-<dt id="git.remote.FetchInfo.commit">
-<tt class="descname">commit</tt><a class="headerlink" href="#git.remote.FetchInfo.commit" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Commit of our remote ref</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.FetchInfo.flags">
-<tt class="descname">flags</tt><a class="headerlink" href="#git.remote.FetchInfo.flags" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.FetchInfo.name">
-<tt class="descname">name</tt><a class="headerlink" href="#git.remote.FetchInfo.name" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Name of our remote ref</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.FetchInfo.note">
-<tt class="descname">note</tt><a class="headerlink" href="#git.remote.FetchInfo.note" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.FetchInfo.old_commit">
-<tt class="descname">old_commit</tt><a class="headerlink" href="#git.remote.FetchInfo.old_commit" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.FetchInfo.ref">
-<tt class="descname">ref</tt><a class="headerlink" href="#git.remote.FetchInfo.ref" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.remote.Remote">
-<em class="property">class </em><tt class="descclassname">git.remote.</tt><tt class="descname">Remote</tt><big>(</big><em>repo</em>, <em>name</em><big>)</big><a class="headerlink" href="#git.remote.Remote" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides easy read and write access to a git remote.</p>
-<p>Everything not part of this interface is considered an option for the current
-remote, allowing constructs like remote.pushurl to query the pushurl.</p>
-<p>NOTE: When querying configuration, the configuration accessor will be cached
-to speed up subsequent accesses.</p>
-<dl class="classmethod">
-<dt id="git.remote.Remote.add">
-<em class="property">classmethod </em><tt class="descname">add</tt><big>(</big><em>repo</em>, <em>name</em>, <em>url</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.remote.Remote.add" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a new remote to the given repository
-:param repo: Repository instance that is to receive the new remote
-:param name: Desired name of the remote
-:param url: URL which corresponds to the remote&#8217;s name
-:param kwargs:</p>
-<blockquote>
-Additional arguments to be passed to the git-remote add command</blockquote>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">New Remote instance</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises GitCommandError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">in case an origin with that name already exists</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.Remote.config_reader">
-<tt class="descname">config_reader</tt><a class="headerlink" href="#git.remote.Remote.config_reader" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">GitConfigParser compatible object able to read options for only our remote.
-Hence you may simple type config.get(&#8220;pushurl&#8221;) to obtain the information</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.Remote.config_writer">
-<tt class="descname">config_writer</tt><a class="headerlink" href="#git.remote.Remote.config_writer" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">GitConfigParser compatible object able to write options for this remote.</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first">You can only own one writer at a time - delete it to release the
-configuration file and make it useable by others.</p>
-<p class="last">To assure consistent results, you should only query options through the
-writer. Once you are done writing, you are free to use the config reader
-once again.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.remote.Remote.create">
-<em class="property">classmethod </em><tt class="descname">create</tt><big>(</big><em>repo</em>, <em>name</em>, <em>url</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.remote.Remote.create" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a new remote to the given repository
-:param repo: Repository instance that is to receive the new remote
-:param name: Desired name of the remote
-:param url: URL which corresponds to the remote&#8217;s name
-:param kwargs:</p>
-<blockquote>
-Additional arguments to be passed to the git-remote add command</blockquote>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">New Remote instance</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises GitCommandError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">in case an origin with that name already exists</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.remote.Remote.fetch">
-<tt class="descname">fetch</tt><big>(</big><em>refspec=None</em>, <em>progress=None</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.remote.Remote.fetch" title="Permalink to this definition">¶</a></dt>
-<dd><p>Fetch the latest changes for this remote</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>refspec</em> &#8211; <p>A &#8220;refspec&#8221; is used by fetch and push to describe the mapping
-between remote ref and local ref. They are combined with a colon in
-the format &lt;src&gt;:&lt;dst&gt;, preceded by an optional plus sign, +.
-For example: git fetch $URL refs/heads/master:refs/heads/origin means
-&#8220;grab the master branch head from the $URL and store it as my origin
-branch head&#8221;. And git push $URL refs/heads/master:refs/heads/to-upstream
-means &#8220;publish my master branch head as to-upstream branch at $URL&#8221;.
-See also git-push(1).</p>
-<p>Taken from the git manual</p>
-</li>
-<li><em>progress</em> &#8211; See &#8216;push&#8217; method</li>
-<li><em>kwargs</em> &#8211; Additional arguments to be passed to git-fetch</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">IterableList(FetchInfo, ...) list of FetchInfo instances providing detailed
-information about the fetch results</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">As fetch does not provide progress information to non-ttys, we cannot make
-it available here unfortunately as in the &#8216;push&#8217; method.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.remote.Remote.iter_items">
-<em class="property">classmethod </em><tt class="descname">iter_items</tt><big>(</big><em>repo</em><big>)</big><a class="headerlink" href="#git.remote.Remote.iter_items" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Iterator yielding Remote objects of the given repository</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.Remote.name">
-<tt class="descname">name</tt><a class="headerlink" href="#git.remote.Remote.name" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.remote.Remote.pull">
-<tt class="descname">pull</tt><big>(</big><em>refspec=None</em>, <em>progress=None</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.remote.Remote.pull" title="Permalink to this definition">¶</a></dt>
-<dd><p>Pull changes from the given branch, being the same as a fetch followed
-by a merge of branch with your local branch.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>refspec</em> &#8211; see &#8216;fetch&#8217; method</li>
-<li><em>progress</em> &#8211; see &#8216;push&#8217; method</li>
-<li><em>kwargs</em> &#8211; Additional arguments to be passed to git-pull</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">Please see &#8216;fetch&#8217; method</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.remote.Remote.push">
-<tt class="descname">push</tt><big>(</big><em>refspec=None</em>, <em>progress=None</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.remote.Remote.push" title="Permalink to this definition">¶</a></dt>
-<dd><p>Push changes from source branch in refspec to target branch in refspec.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameters:</th><td class="field-body"><ul class="first simple">
-<li><em>refspec</em> &#8211; see &#8216;fetch&#8217; method</li>
-<li><em>progress</em> &#8211; Instance of type RemoteProgress allowing the caller to receive
-progress information until the method returns.
-If None, progress information will be discarded</li>
-<li><em>kwargs</em> &#8211; Additional arguments to be passed to git-push</li>
-</ul>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first last">IterableList(PushInfo, ...) iterable list of PushInfo instances, each
-one informing about an individual head which had been updated on the remote
-side.
-If the push contains rejected heads, these will have the PushInfo.ERROR bit set
-in their flags.
-If the operation fails completely, the length of the returned IterableList will
-be null.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.Remote.refs">
-<tt class="descname">refs</tt><a class="headerlink" href="#git.remote.Remote.refs" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">IterableList of RemoteReference objects. It is prefixed, allowing
-you to omit the remote path portion, i.e.:</p>
-<div class="last highlight-python"><div class="highlight"><pre><span class="n">remote</span><span class="o">.</span><span class="n">refs</span><span class="o">.</span><span class="n">master</span> <span class="c"># yields RemoteReference(&#39;/refs/remotes/origin/master&#39;)</span>
-</pre></div>
-</div>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.remote.Remote.remove">
-<em class="property">classmethod </em><tt class="descname">remove</tt><big>(</big><em>repo</em>, <em>name</em><big>)</big><a class="headerlink" href="#git.remote.Remote.remove" title="Permalink to this definition">¶</a></dt>
-<dd>Remove the remote with the given name</dd></dl>
-
-<dl class="method">
-<dt id="git.remote.Remote.rename">
-<tt class="descname">rename</tt><big>(</big><em>new_name</em><big>)</big><a class="headerlink" href="#git.remote.Remote.rename" title="Permalink to this definition">¶</a></dt>
-<dd>Rename self to the given new_name
-:return: self</dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.Remote.repo">
-<tt class="descname">repo</tt><a class="headerlink" href="#git.remote.Remote.repo" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="classmethod">
-<dt id="git.remote.Remote.rm">
-<em class="property">classmethod </em><tt class="descname">rm</tt><big>(</big><em>repo</em>, <em>name</em><big>)</big><a class="headerlink" href="#git.remote.Remote.rm" title="Permalink to this definition">¶</a></dt>
-<dd>Remove the remote with the given name</dd></dl>
-
-<dl class="attribute">
-<dt id="git.remote.Remote.stale_refs">
-<tt class="descname">stale_refs</tt><a class="headerlink" href="#git.remote.Remote.stale_refs" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">IterableList RemoteReference objects that do not have a corresponding
-head in the remote reference anymore as they have been deleted on the
-remote side, but are still available locally.</p>
-<p class="last">The IterableList is prefixed, hence the &#8216;origin&#8217; must be omitted. See
-&#8216;refs&#8217; property for an example.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.remote.Remote.update">
-<tt class="descname">update</tt><big>(</big><em>**kwargs</em><big>)</big><a class="headerlink" href="#git.remote.Remote.update" title="Permalink to this definition">¶</a></dt>
-<dd><p>Fetch all changes for this remote, including new branches which will
-be forced in ( in case your local remote branch is not part the new remote branches
-ancestry anymore ).</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>kwargs</em> &#8211; Additional arguments passed to git-remote update</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">self</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.repo.base">
-<h2>Repo.Base<a class="headerlink" href="#module-git.repo.base" title="Permalink to this headline">¶</a></h2>
-<dl class="class">
-<dt id="git.repo.base.Repo">
-<em class="property">class </em><tt class="descclassname">git.repo.base.</tt><tt class="descname">Repo</tt><big>(</big><em>path=None</em>, <em>odbt=&lt;class 'gitdb.db.git.GitDB'&gt;</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo" title="Permalink to this definition">¶</a></dt>
-<dd><p>Represents a git repository and allows you to query references,
-gather commit information, generate diffs, create and clone repositories query
-the log.</p>
-<p>The following attributes are worth using:</p>
-<p>&#8216;working_dir&#8217; is the working directory of the git command, wich is the working tree
-directory if available or the .git directory in case of bare repositories</p>
-<p>&#8216;working_tree_dir&#8217; is the working tree directory, but will raise AssertionError
-if we are a bare repository.</p>
-<p>&#8216;git_dir&#8217; is the .git repository directoy, which is always set.</p>
-<dl class="attribute">
-<dt id="git.repo.base.Repo.active_branch">
-<tt class="descname">active_branch</tt><a class="headerlink" href="#git.repo.base.Repo.active_branch" title="Permalink to this definition">¶</a></dt>
-<dd><p>The name of the currently active branch.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Head to the active branch</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.alternates">
-<tt class="descname">alternates</tt><a class="headerlink" href="#git.repo.base.Repo.alternates" title="Permalink to this definition">¶</a></dt>
-<dd>Retrieve a list of alternates paths or set a list paths to be used as alternates</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.archive">
-<tt class="descname">archive</tt><big>(</big><em>ostream</em>, <em>treeish=None</em>, <em>prefix=None</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.archive" title="Permalink to this definition">¶</a></dt>
-<dd><p>Archive the tree at the given revision.
-:parm ostream: file compatible stream object to which the archive will be written
-:parm treeish: is the treeish name/id, defaults to active branch
-:parm prefix: is the optional prefix to prepend to each filename in the archive
-:parm kwargs:</p>
-<blockquote>
-Additional arguments passed to git-archive
-NOTE: Use the &#8216;format&#8217; argument to define the kind of format. Use
-specialized ostreams to write any format supported by python</blockquote>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name" colspan="2">Raises GitCommandError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">in case something went wrong</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">self</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.bare">
-<tt class="descname">bare</tt><a class="headerlink" href="#git.repo.base.Repo.bare" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">True if the repository is bare</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.blame">
-<tt class="descname">blame</tt><big>(</big><em>rev</em>, <em>file</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.blame" title="Permalink to this definition">¶</a></dt>
-<dd><p>The blame information for the given file at the given revision.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parm rev:</th><td class="field-body">revision specifier, see git-rev-parse for viable options.</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">list: [git.Commit, list: [&lt;line&gt;]]
-A list of tuples associating a Commit object with a list of lines that
-changed within the given commit. The Commit objects will be given in order
-of appearance.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.branches">
-<tt class="descname">branches</tt><a class="headerlink" href="#git.repo.base.Repo.branches" title="Permalink to this definition">¶</a></dt>
-<dd><p>A list of <tt class="docutils literal"><span class="pre">Head</span></tt> objects representing the branch heads in
-this repo</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><tt class="docutils literal"><span class="pre">git.IterableList(Head,</span> <span class="pre">...)</span></tt></td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.clone">
-<tt class="descname">clone</tt><big>(</big><em>path</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.clone" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a clone from this repository.
-:param path:</p>
-<blockquote>
-is the full path of the new repo (traditionally ends with ./&lt;name&gt;.git).</blockquote>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>kwargs</em> &#8211; <p>odbt = ObjectDatabase Type, allowing to determine the object database
-implementation used by the returned Repo instance</p>
-<p>All remaining keyword arguments are given to the git-clone command</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><tt class="docutils literal"><span class="pre">git.Repo</span></tt> (the newly cloned repo)</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.repo.base.Repo.clone_from">
-<em class="property">classmethod </em><tt class="descname">clone_from</tt><big>(</big><em>url</em>, <em>to_path</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.clone_from" title="Permalink to this definition">¶</a></dt>
-<dd>Create a clone from the given URL
-:param url: valid git url, see <a class="reference external" href="http://www.kernel.org/pub/software/scm/git/docs/git-clone.html#URLS">http://www.kernel.org/pub/software/scm/git/docs/git-clone.html#URLS</a>
-:param to_path: Path to which the repository should be cloned to
-:param <a href="#id1"><span class="problematic" id="id2">**</span></a>kwargs: see the <tt class="docutils literal"><span class="pre">clone</span></tt> method
-:return: Repo instance pointing to the cloned directory</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.commit">
-<tt class="descname">commit</tt><big>(</big><em>rev=None</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.commit" title="Permalink to this definition">¶</a></dt>
-<dd>The Commit object for the specified revision
-:param rev: revision specifier, see git-rev-parse for viable options.
-:return: <tt class="docutils literal"><span class="pre">git.Commit</span></tt></dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.config_reader">
-<tt class="descname">config_reader</tt><big>(</big><em>config_level=None</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.config_reader" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">GitConfigParser allowing to read the full git configuration, but not to write it</p>
-<p>The configuration will include values from the system, user and repository
-configuration files.</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><p class="first"><em>config_level</em> &#8211; For possible values, see config_writer method
-If None, all applicable levels will be used. Specify a level in case
-you know which exact file you whish to read to prevent reading multiple files for
-instance</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">On windows, system configuration cannot currently be read as the path is
-unknown, instead the global path will be used.</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.config_writer">
-<tt class="descname">config_writer</tt><big>(</big><em>config_level='repository'</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.config_writer" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">GitConfigParser allowing to write values of the specified configuration file level.
-Config writers should be retrieved, used to change the configuration ,and written
-right away as they will lock the configuration file in question and prevent other&#8217;s
-to write it.</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>config_level</em> &#8211; One of the following values
-system = sytem wide configuration file
-global = user level configuration file
-repository = configuration file for this repostory only</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.create_head">
-<tt class="descname">create_head</tt><big>(</big><em>path</em>, <em>commit='HEAD'</em>, <em>force=False</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.create_head" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a new head within the repository.
-For more documentation, please see the Head.create method.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">newly created Head Reference</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.create_remote">
-<tt class="descname">create_remote</tt><big>(</big><em>name</em>, <em>url</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.create_remote" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a new remote.</p>
-<p>For more information, please see the documentation of the Remote.create
-methods</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Remote reference</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.create_tag">
-<tt class="descname">create_tag</tt><big>(</big><em>path</em>, <em>ref='HEAD'</em>, <em>message=None</em>, <em>force=False</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.create_tag" title="Permalink to this definition">¶</a></dt>
-<dd><p>Create a new tag reference.
-For more documentation, please see the TagReference.create method.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">TagReference object</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.daemon_export">
-<tt class="descname">daemon_export</tt><a class="headerlink" href="#git.repo.base.Repo.daemon_export" title="Permalink to this definition">¶</a></dt>
-<dd>If True, git-daemon may export this repository</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.delete_head">
-<tt class="descname">delete_head</tt><big>(</big><em>*heads</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.delete_head" title="Permalink to this definition">¶</a></dt>
-<dd><p>Delete the given heads</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>kwargs</em> &#8211; Additional keyword arguments to be passed to git-branch</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.delete_remote">
-<tt class="descname">delete_remote</tt><big>(</big><em>remote</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.delete_remote" title="Permalink to this definition">¶</a></dt>
-<dd>Delete the given remote.</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.delete_tag">
-<tt class="descname">delete_tag</tt><big>(</big><em>*tags</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.delete_tag" title="Permalink to this definition">¶</a></dt>
-<dd>Delete the given tag references</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.description">
-<tt class="descname">description</tt><a class="headerlink" href="#git.repo.base.Repo.description" title="Permalink to this definition">¶</a></dt>
-<dd>the project&#8217;s description</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.git">
-<tt class="descname">git</tt><a class="headerlink" href="#git.repo.base.Repo.git" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.git_dir">
-<tt class="descname">git_dir</tt><a class="headerlink" href="#git.repo.base.Repo.git_dir" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.head">
-<tt class="descname">head</tt><a class="headerlink" href="#git.repo.base.Repo.head" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">HEAD Object pointing to the current head reference</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.heads">
-<tt class="descname">heads</tt><a class="headerlink" href="#git.repo.base.Repo.heads" title="Permalink to this definition">¶</a></dt>
-<dd><p>A list of <tt class="docutils literal"><span class="pre">Head</span></tt> objects representing the branch heads in
-this repo</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><tt class="docutils literal"><span class="pre">git.IterableList(Head,</span> <span class="pre">...)</span></tt></td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.index">
-<tt class="descname">index</tt><a class="headerlink" href="#git.repo.base.Repo.index" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">IndexFile representing this repository&#8217;s index.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.repo.base.Repo.init">
-<em class="property">classmethod </em><tt class="descname">init</tt><big>(</big><em>path=None</em>, <em>mkdir=True</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.init" title="Permalink to this definition">¶</a></dt>
-<dd><p>Initialize a git repository at the given path if specified</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>path</em> &#8211; is the full path to the repo (traditionally ends with /&lt;name&gt;.git)
-or None in which case the repository will be created in the current
-working directory</td>
-</tr>
-<tr class="field"><th class="field-name">Parm mkdir:</th><td class="field-body">if specified will create the repository directory if it doesn&#8217;t
-already exists. Creates the directory with a mode=0755.
-Only effective if a path is explicitly given</td>
-</tr>
-<tr class="field"><th class="field-name">Parm kwargs:</th><td class="field-body">keyword arguments serving as additional options to the git-init command</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><tt class="docutils literal"><span class="pre">git.Repo</span></tt> (the newly created repo)</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.is_dirty">
-<tt class="descname">is_dirty</tt><big>(</big><em>index=True</em>, <em>working_tree=True</em>, <em>untracked_files=False</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.is_dirty" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><tt class="xref docutils literal"><span class="pre">True</span></tt>, the repository is considered dirty. By default it will react
-like a git-status without untracked files, hence it is dirty if the
-index or the working copy have changes.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.iter_commits">
-<tt class="descname">iter_commits</tt><big>(</big><em>rev=None</em>, <em>paths=''</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.iter_commits" title="Permalink to this definition">¶</a></dt>
-<dd><p>A list of Commit objects representing the history of a given ref/commit</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parm rev:</th><td class="field-body">revision specifier, see git-rev-parse for viable options.
-If None, the active branch will be used.</td>
-</tr>
-<tr class="field"><th class="field-name">Parm paths:</th><td class="field-body">is an optional path or a list of paths to limit the returned commits to
-Commits that do not contain that path or the paths will not be returned.</td>
-</tr>
-<tr class="field"><th class="field-name">Parm kwargs:</th><td class="field-body">Arguments to be passed to git-rev-list - common ones are
-max_count and skip</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">to receive only commits between two named revisions, use the
-&#8220;revA..revB&#8221; revision specifier</td>
-</tr>
-</tbody>
-</table>
-<p>:return <tt class="docutils literal"><span class="pre">git.Commit[]</span></tt></p>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.iter_trees">
-<tt class="descname">iter_trees</tt><big>(</big><em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.iter_trees" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Iterator yielding Tree objects</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">Takes all arguments known to iter_commits method</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.odb">
-<tt class="descname">odb</tt><a class="headerlink" href="#git.repo.base.Repo.odb" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.references">
-<tt class="descname">references</tt><a class="headerlink" href="#git.repo.base.Repo.references" title="Permalink to this definition">¶</a></dt>
-<dd><p>A list of Reference objects representing tags, heads and remote references.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">IterableList(Reference, ...)</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.refs">
-<tt class="descname">refs</tt><a class="headerlink" href="#git.repo.base.Repo.refs" title="Permalink to this definition">¶</a></dt>
-<dd><p>A list of Reference objects representing tags, heads and remote references.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">IterableList(Reference, ...)</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.remote">
-<tt class="descname">remote</tt><big>(</big><em>name='origin'</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.remote" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Remote with the specified name</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises ValueError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">if no remote with such a name exists</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.remotes">
-<tt class="descname">remotes</tt><a class="headerlink" href="#git.repo.base.Repo.remotes" title="Permalink to this definition">¶</a></dt>
-<dd>A list of Remote objects allowing to access and manipulate remotes
-:return: <tt class="docutils literal"><span class="pre">git.IterableList(Remote,</span> <span class="pre">...)</span></tt></dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.rev_parse">
-<tt class="descname">rev_parse</tt><big>(</big><em>repo</em>, <em>rev</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.rev_parse" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Object at the given revision, either Commit, Tag, Tree or Blob</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>rev</em> &#8211; git-rev-parse compatible revision specification, please see
-<a class="reference external" href="http://www.kernel.org/pub/software/scm/git/docs/git-rev-parse.html">http://www.kernel.org/pub/software/scm/git/docs/git-rev-parse.html</a>
-for details</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">Currently there is no access to the rev-log, rev-specs may only contain
-topological tokens such ~ and ^.</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises BadObject:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">if the given revision could not be found</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.tag">
-<tt class="descname">tag</tt><big>(</big><em>path</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.tag" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">TagReference Object, reference pointing to a Commit or Tag</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>path</em> &#8211; path to the tag reference, i.e. 0.1.5 or tags/0.1.5</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.tags">
-<tt class="descname">tags</tt><a class="headerlink" href="#git.repo.base.Repo.tags" title="Permalink to this definition">¶</a></dt>
-<dd>A list of <tt class="docutils literal"><span class="pre">Tag</span></tt> objects that are available in this repo
-:return: <tt class="docutils literal"><span class="pre">git.IterableList(TagReference,</span> <span class="pre">...)</span></tt></dd></dl>
-
-<dl class="method">
-<dt id="git.repo.base.Repo.tree">
-<tt class="descname">tree</tt><big>(</big><em>rev=None</em><big>)</big><a class="headerlink" href="#git.repo.base.Repo.tree" title="Permalink to this definition">¶</a></dt>
-<dd><p>The Tree object for the given treeish revision
-Examples:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">tree</span><span class="p">(</span><span class="n">repo</span><span class="o">.</span><span class="n">heads</span><span class="p">[</span><span class="mf">0</span><span class="p">])</span>
-</pre></div>
-</div>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>rev</em> &#8211; is a revision pointing to a Treeish ( being a commit or tree )</td>
-</tr>
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><tt class="docutils literal"><span class="pre">git.Tree</span></tt></td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">If you need a non-root level tree, find it by iterating the root tree. Otherwise
-it cannot know about its path relative to the repository root and subsequent
-operations might have unexpected results.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.untracked_files">
-<tt class="descname">untracked_files</tt><a class="headerlink" href="#git.repo.base.Repo.untracked_files" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body"><p class="first">list(str,...)</p>
-<p>Files currently untracked as they have not been staged yet. Paths
-are relative to the current working directory of the git command.</p>
-</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body"><p class="first last">ignored files will not appear here, i.e. files mentioned in .gitignore</p>
-</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.working_dir">
-<tt class="descname">working_dir</tt><a class="headerlink" href="#git.repo.base.Repo.working_dir" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.repo.base.Repo.working_tree_dir">
-<tt class="descname">working_tree_dir</tt><a class="headerlink" href="#git.repo.base.Repo.working_tree_dir" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">The working tree directory of our git repository</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises AssertionError:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">If we are a bare repository</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-</dd></dl>
-
-</div>
-<div class="section" id="module-git.repo.fun">
-<h2>Repo.Functions<a class="headerlink" href="#module-git.repo.fun" title="Permalink to this headline">¶</a></h2>
-<p>Package with general repository related functions</p>
-<dl class="function">
-<dt id="git.repo.fun.rev_parse">
-<tt class="descclassname">git.repo.fun.</tt><tt class="descname">rev_parse</tt><big>(</big><em>repo</em>, <em>rev</em><big>)</big><a class="headerlink" href="#git.repo.fun.rev_parse" title="Permalink to this definition">¶</a></dt>
-<dd><table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">Object at the given revision, either Commit, Tag, Tree or Blob</td>
-</tr>
-<tr class="field"><th class="field-name">Parameter:</th><td class="field-body"><em>rev</em> &#8211; git-rev-parse compatible revision specification, please see
-<a class="reference external" href="http://www.kernel.org/pub/software/scm/git/docs/git-rev-parse.html">http://www.kernel.org/pub/software/scm/git/docs/git-rev-parse.html</a>
-for details</td>
-</tr>
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">Currently there is no access to the rev-log, rev-specs may only contain
-topological tokens such ~ and ^.</td>
-</tr>
-<tr class="field"><th class="field-name" colspan="2">Raises BadObject:</th></tr>
-<tr><td>&nbsp;</td><td class="field-body">if the given revision could not be found</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.repo.fun.is_git_dir">
-<tt class="descclassname">git.repo.fun.</tt><tt class="descname">is_git_dir</tt><big>(</big><em>d</em><big>)</big><a class="headerlink" href="#git.repo.fun.is_git_dir" title="Permalink to this definition">¶</a></dt>
-<dd>This is taken from the git setup.c:is_git_directory
-function.</dd></dl>
-
-<dl class="function">
-<dt id="git.repo.fun.touch">
-<tt class="descclassname">git.repo.fun.</tt><tt class="descname">touch</tt><big>(</big><em>filename</em><big>)</big><a class="headerlink" href="#git.repo.fun.touch" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</div>
-<div class="section" id="module-git.util">
-<h2>Util<a class="headerlink" href="#module-git.util" title="Permalink to this headline">¶</a></h2>
-<dl class="function">
-<dt id="git.util.stream_copy">
-<tt class="descclassname">git.util.</tt><tt class="descname">stream_copy</tt><big>(</big><em>source</em>, <em>destination</em>, <em>chunk_size=524288</em><big>)</big><a class="headerlink" href="#git.util.stream_copy" title="Permalink to this definition">¶</a></dt>
-<dd><p>Copy all data from the source stream into the destination stream in chunks
-of size chunk_size</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Returns:</th><td class="field-body">amount of bytes written</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="function">
-<dt id="git.util.join_path">
-<tt class="descclassname">git.util.</tt><tt class="descname">join_path</tt><big>(</big><em>a</em>, <em>*p</em><big>)</big><a class="headerlink" href="#git.util.join_path" title="Permalink to this definition">¶</a></dt>
-<dd>Join path tokens together similar to os.path.join, but always use
-&#8216;/&#8217; instead of possibly &#8216;&#8217; on windows.</dd></dl>
-
-<dl class="function">
-<dt id="git.util.to_native_path_windows">
-<tt class="descclassname">git.util.</tt><tt class="descname">to_native_path_windows</tt><big>(</big><em>path</em><big>)</big><a class="headerlink" href="#git.util.to_native_path_windows" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="function">
-<dt id="git.util.to_native_path_linux">
-<tt class="descclassname">git.util.</tt><tt class="descname">to_native_path_linux</tt><big>(</big><em>path</em><big>)</big><a class="headerlink" href="#git.util.to_native_path_linux" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="function">
-<dt id="git.util.join_path_native">
-<tt class="descclassname">git.util.</tt><tt class="descname">join_path_native</tt><big>(</big><em>a</em>, <em>*p</em><big>)</big><a class="headerlink" href="#git.util.join_path_native" title="Permalink to this definition">¶</a></dt>
-<dd>As join path, but makes sure an OS native path is returned. This is only
-needed to play it safe on my dear windows and to assure nice paths that only
-use &#8216;&#8217;</dd></dl>
-
-<dl class="class">
-<dt id="git.util.Stats">
-<em class="property">class </em><tt class="descclassname">git.util.</tt><tt class="descname">Stats</tt><big>(</big><em>total</em>, <em>files</em><big>)</big><a class="headerlink" href="#git.util.Stats" title="Permalink to this definition">¶</a></dt>
-<dd><p>Represents stat information as presented by git at the end of a merge. It is
-created from the output of a diff operation.</p>
-<p><tt class="docutils literal"><span class="pre">Example</span></tt>:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">c</span> <span class="o">=</span> <span class="n">Commit</span><span class="p">(</span> <span class="n">sha1</span> <span class="p">)</span>
-<span class="n">s</span> <span class="o">=</span> <span class="n">c</span><span class="o">.</span><span class="n">stats</span>
-<span class="n">s</span><span class="o">.</span><span class="n">total</span> <span class="c"># full-stat-dict</span>
-<span class="n">s</span><span class="o">.</span><span class="n">files</span> <span class="c"># dict( filepath : stat-dict )</span>
-</pre></div>
-</div>
-<p><tt class="docutils literal"><span class="pre">stat-dict</span></tt></p>
-<p>A dictionary with the following keys and values:</p>
-<div class="highlight-python"><pre>deletions = number of deleted lines as int
-insertions = number of inserted lines as int
-lines = total number of lines changed as int, or deletions + insertions</pre>
-</div>
-<p><tt class="docutils literal"><span class="pre">full-stat-dict</span></tt></p>
-<p>In addition to the items in the stat-dict, it features additional information:</p>
-<div class="highlight-python"><pre>files = number of changed files as int</pre>
-</div>
-<dl class="attribute">
-<dt id="git.util.Stats.files">
-<tt class="descname">files</tt><a class="headerlink" href="#git.util.Stats.files" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.util.Stats.total">
-<tt class="descname">total</tt><a class="headerlink" href="#git.util.Stats.total" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.util.IndexFileSHA1Writer">
-<em class="property">class </em><tt class="descclassname">git.util.</tt><tt class="descname">IndexFileSHA1Writer</tt><big>(</big><em>f</em><big>)</big><a class="headerlink" href="#git.util.IndexFileSHA1Writer" title="Permalink to this definition">¶</a></dt>
-<dd><p>Wrapper around a file-like object that remembers the SHA1 of
-the data written to it. It will write a sha when the stream is closed
-or if the asked for explicitly usign write_sha.</p>
-<p>Only useful to the indexfile</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">Based on the dulwich project</td>
-</tr>
-</tbody>
-</table>
-<dl class="method">
-<dt id="git.util.IndexFileSHA1Writer.close">
-<tt class="descname">close</tt><big>(</big><big>)</big><a class="headerlink" href="#git.util.IndexFileSHA1Writer.close" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.util.IndexFileSHA1Writer.f">
-<tt class="descname">f</tt><a class="headerlink" href="#git.util.IndexFileSHA1Writer.f" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="attribute">
-<dt id="git.util.IndexFileSHA1Writer.sha1">
-<tt class="descname">sha1</tt><a class="headerlink" href="#git.util.IndexFileSHA1Writer.sha1" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.util.IndexFileSHA1Writer.tell">
-<tt class="descname">tell</tt><big>(</big><big>)</big><a class="headerlink" href="#git.util.IndexFileSHA1Writer.tell" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.util.IndexFileSHA1Writer.write">
-<tt class="descname">write</tt><big>(</big><em>data</em><big>)</big><a class="headerlink" href="#git.util.IndexFileSHA1Writer.write" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-<dl class="method">
-<dt id="git.util.IndexFileSHA1Writer.write_sha">
-<tt class="descname">write_sha</tt><big>(</big><big>)</big><a class="headerlink" href="#git.util.IndexFileSHA1Writer.write_sha" title="Permalink to this definition">¶</a></dt>
-<dd></dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.util.Iterable">
-<em class="property">class </em><tt class="descclassname">git.util.</tt><tt class="descname">Iterable</tt><a class="headerlink" href="#git.util.Iterable" title="Permalink to this definition">¶</a></dt>
-<dd><p>Defines an interface for iterable items which is to assure a uniform
-way to retrieve and iterate items within the git repository</p>
-<dl class="classmethod">
-<dt id="git.util.Iterable.iter_items">
-<em class="property">classmethod </em><tt class="descname">iter_items</tt><big>(</big><em>repo</em>, <em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.util.Iterable.iter_items" title="Permalink to this definition">¶</a></dt>
-<dd>For more information about the arguments, see list_items
-:return: iterator yielding Items</dd></dl>
-
-<dl class="classmethod">
-<dt id="git.util.Iterable.list_items">
-<em class="property">classmethod </em><tt class="descname">list_items</tt><big>(</big><em>repo</em>, <em>*args</em>, <em>**kwargs</em><big>)</big><a class="headerlink" href="#git.util.Iterable.list_items" title="Permalink to this definition">¶</a></dt>
-<dd><p>Find all items of this type - subclasses can specify args and kwargs differently.
-If no args are given, subclasses are obliged to return all items if no additional
-arguments arg given.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">Favor the iter_items method as it will</td>
-</tr>
-</tbody>
-</table>
-<p>:return:list(Item,...) list of item instances</p>
-</dd></dl>
-
-</dd></dl>
-
-<dl class="class">
-<dt id="git.util.IterableList">
-<em class="property">class </em><tt class="descclassname">git.util.</tt><tt class="descname">IterableList</tt><big>(</big><em>id_attr</em>, <em>prefix=''</em><big>)</big><a class="headerlink" href="#git.util.IterableList" title="Permalink to this definition">¶</a></dt>
-<dd><p>List of iterable objects allowing to query an object by id or by named index:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">heads</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">heads</span>
-<span class="n">heads</span><span class="o">.</span><span class="n">master</span>
-<span class="n">heads</span><span class="p">[</span><span class="s">&#39;master&#39;</span><span class="p">]</span>
-<span class="n">heads</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span>
-</pre></div>
-</div>
-<p>It requires an id_attribute name to be set which will be queried from its
-contained items to have a means for comparison.</p>
-<p>A prefix can be specified which is to be used in case the id returned by the
-items always contains a prefix that does not matter to the user, so it
-can be left out.</p>
-</dd></dl>
-
-<dl class="class">
-<dt id="git.util.BlockingLockFile">
-<em class="property">class </em><tt class="descclassname">git.util.</tt><tt class="descname">BlockingLockFile</tt><big>(</big><em>file_path</em>, <em>check_interval_s=0.29999999999999999</em>, <em>max_block_time_s=9223372036854775807</em><big>)</big><a class="headerlink" href="#git.util.BlockingLockFile" title="Permalink to this definition">¶</a></dt>
-<dd><p>The lock file will block until a lock could be obtained, or fail after
-a specified timeout.</p>
-<table class="docutils field-list" frame="void" rules="none">
-<col class="field-name" />
-<col class="field-body" />
-<tbody valign="top">
-<tr class="field"><th class="field-name">Note:</th><td class="field-body">If the directory containing the lock was removed, an exception will
-be raised during the blocking period, preventing hangs as the lock
-can never be obtained.</td>
-</tr>
-</tbody>
-</table>
-</dd></dl>
-
-<dl class="class">
-<dt id="git.util.LockFile">
-<em class="property">class </em><tt class="descclassname">git.util.</tt><tt class="descname">LockFile</tt><big>(</big><em>file_path</em><big>)</big><a class="headerlink" href="#git.util.LockFile" title="Permalink to this definition">¶</a></dt>
-<dd><p>Provides methods to obtain, check for, and release a file based lock which
-should be used to handle concurrent access to the same file.</p>
-<p>As we are a utility class to be derived from, we only use protected methods.</p>
-<p>Locks will automatically be released on destruction</p>
-</dd></dl>
-
-</div>
-</div>
-
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
- <h3><a href="index.html">Table Of Contents</a></h3>
- <ul>
-<li><a class="reference external" href="#">API Reference</a><ul>
-<li><a class="reference external" href="#module-git.objects.base">Objects.Base</a></li>
-<li><a class="reference external" href="#module-git.objects.blob">Objects.Blob</a></li>
-<li><a class="reference external" href="#module-git.objects.commit">Objects.Commit</a></li>
-<li><a class="reference external" href="#module-git.objects.tag">Objects.Tag</a></li>
-<li><a class="reference external" href="#module-git.objects.tree">Objects.Tree</a></li>
-<li><a class="reference external" href="#module-git.objects.fun">Objects.Functions</a></li>
-<li><a class="reference external" href="#module-git.objects.submodule">Objects.Submodule</a></li>
-<li><a class="reference external" href="#module-git.objects.util">Objects.Util</a></li>
-<li><a class="reference external" href="#module-git.index.base">Index.Base</a></li>
-<li><a class="reference external" href="#module-git.index.fun">Index.Functions</a></li>
-<li><a class="reference external" href="#module-git.index.typ">Index.Types</a></li>
-<li><a class="reference external" href="#module-git.index.util">Index.Util</a></li>
-<li><a class="reference external" href="#module-git.cmd">GitCmd</a></li>
-<li><a class="reference external" href="#module-git.config">Config</a></li>
-<li><a class="reference external" href="#module-git.diff">Diff</a></li>
-<li><a class="reference external" href="#module-git.errors">Errors</a></li>
-<li><a class="reference external" href="#module-git.refs">Refs</a></li>
-<li><a class="reference external" href="#module-git.remote">Remote</a></li>
-<li><a class="reference external" href="#module-git.repo.base">Repo.Base</a></li>
-<li><a class="reference external" href="#module-git.repo.fun">Repo.Functions</a></li>
-<li><a class="reference external" href="#module-git.util">Util</a></li>
-</ul>
-</li>
-</ul>
-
- <h4>Previous topic</h4>
- <p class="topless"><a href="tutorial.html"
- title="previous chapter">GitPython Tutorial</a></p>
- <h4>Next topic</h4>
- <p class="topless"><a href="roadmap.html"
- title="next chapter">Roadmap</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/reference.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
- <div id="searchbox" style="display: none">
- <h3>Quick search</h3>
- <form class="search" action="search.html" method="get">
- <input type="text" name="q" size="18" />
- <input type="submit" value="Go" />
- <input type="hidden" name="check_keywords" value="yes" />
- <input type="hidden" name="area" value="default" />
- </form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
- </div>
- <script type="text/javascript">$('#searchbox').show(0);</script>
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- >modules</a> |</li>
- <li class="right" >
- <a href="roadmap.html" title="Roadmap"
- >next</a> |</li>
- <li class="right" >
- <a href="tutorial.html" title="GitPython Tutorial"
- >previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- </body>
-</html> \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/roadmap.html b/doc/doc_index/0.3.0/roadmap.html
deleted file mode 100644
index 984a25a2..00000000
--- a/doc/doc_index/0.3.0/roadmap.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Roadmap &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="index.html" />
- <link rel="next" title="Changelog" href="changes.html" />
- <link rel="prev" title="API Reference" href="reference.html" />
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li class="right" >
- <a href="changes.html" title="Changelog"
- accesskey="N">next</a> |</li>
- <li class="right" >
- <a href="reference.html" title="API Reference"
- accesskey="P">previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
- <div class="section" id="roadmap">
-<h1>Roadmap<a class="headerlink" href="#roadmap" title="Permalink to this headline">¶</a></h1>
-<p>The full list of milestones including associated tasks can be found on lighthouse: <a class="reference external" href="http://byronimo.lighthouseapp.com/projects/51787-gitpython/milestones">http://byronimo.lighthouseapp.com/projects/51787-gitpython/milestones</a></p>
-</div>
-
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
- <h4>Previous topic</h4>
- <p class="topless"><a href="reference.html"
- title="previous chapter">API Reference</a></p>
- <h4>Next topic</h4>
- <p class="topless"><a href="changes.html"
- title="next chapter">Changelog</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/roadmap.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
- <div id="searchbox" style="display: none">
- <h3>Quick search</h3>
- <form class="search" action="search.html" method="get">
- <input type="text" name="q" size="18" />
- <input type="submit" value="Go" />
- <input type="hidden" name="check_keywords" value="yes" />
- <input type="hidden" name="area" value="default" />
- </form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
- </div>
- <script type="text/javascript">$('#searchbox').show(0);</script>
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- >modules</a> |</li>
- <li class="right" >
- <a href="changes.html" title="Changelog"
- >next</a> |</li>
- <li class="right" >
- <a href="reference.html" title="API Reference"
- >previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- </body>
-</html> \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/search.html b/doc/doc_index/0.3.0/search.html
deleted file mode 100644
index 87c61c1d..00000000
--- a/doc/doc_index/0.3.0/search.html
+++ /dev/null
@@ -1,97 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Search &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <script type="text/javascript" src="_static/searchtools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="index.html" />
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
- <h1 id="search-documentation">Search</h1>
- <div id="fallback" class="admonition warning">
- <script type="text/javascript">$('#fallback').hide();</script>
- <p>
- Please activate JavaScript to enable the search
- functionality.
- </p>
- </div>
- <p>
- From here you can search these documents. Enter your search
- words into the box below and click "search". Note that the search
- function will automatically search for all of the words. Pages
- containing fewer words won't appear in the result list.
- </p>
- <form action="" method="get">
- <input type="text" name="q" value="" />
- <input type="submit" value="search" />
- <span id="search-progress" style="padding-left: 10px"></span>
- </form>
-
- <div id="search-results">
-
- </div>
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- >modules</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- <script type="text/javascript" src="searchindex.js"></script>
-
- </body>
-</html> \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/searchindex.js b/doc/doc_index/0.3.0/searchindex.js
deleted file mode 100644
index 2689c1b4..00000000
--- a/doc/doc_index/0.3.0/searchindex.js
+++ /dev/null
@@ -1 +0,0 @@
-Search.setIndex({desctypes:{"0":"attribute","1":"method","2":"classmethod","3":"exception","4":"class","5":"function"},terms:{change_typ:1,prefix:1,browse_thread:5,whose:1,swap:1,under:[3,5,6],worth:1,everi:1,mime_typ:1,upstream:1,affect:5,vast:4,whish:1,gitdb:[4,3,5,6,1],utctz:1,seper:5,direct:[6,1],second:[5,6,1],gitconfigpars:[5,1],as_process:1,even:[0,6,1],hide:1,"new":[0,1,3,4,5,6],topolog:1,subtre:1,never:[5,1],here:[3,6,1],path:[5,6,1],anymor:[4,5,1],everyon:4,parlanc:6,symbolicrefer:[5,1],unix:6,total:1,unit:[3,6],describ:1,would:[3,5,6,1],overhead:4,recommend:3,type:[0,5,6,1],until:1,get_object_data:1,relat:1,notic:5,hurt:5,warn:1,unpack:[6,1],must:1,join:1,ignore_self:1,setup:[3,1],work:[3,5,6,1],spec:[4,5,1],root:[5,6,1],overrid:[5,1],give:1,givn:1,indic:[0,6,1],rename_from:[5,1],want:[4,5,6,1],end:[4,1],a_blob_id:1,temporaryfileswap:1,how:[5,6,1],working_dir:[5,1],moron:5,verifi:3,ancestor:1,config:[0,5,6,1],updat:[3,1],after:1,befor:[5,1],wrong:1,averag:6,classmethod:1,foord:3,perform:[4,5,6,1],maintain:5,environ:[5,1],first:[4,5,6,1],order:[5,1],"3594e94c04db171e2767224db355f514b13715c5":6,"94954abda49de8615a048f8d2e64b5de848e27a1":6,oper:[4,3,6,1],over:4,failur:5,becaus:5,flexibl:4,fix:[5,6],better:5,persist:[5,6,1],check_interval_:1,them:[5,6,1],thei:[5,6,1],safe:[5,1],"break":5,interrupt:1,changelog:[0,5],timeout:1,each:[6,1],debug:[5,1],went:1,odbt:[6,1],oblig:1,prevous:5,mean:1,cmd:[5,1],clear_cach:1,extract:6,goe:1,newli:1,content:[5,6,1],reader:[6,1],size:[5,6,1],optin:1,tagref:[6,1],situat:1,free:1,standard:[6,1],inod:1,forced_upd:1,mimic:5,stale_ref:1,workaround:1,filter:[6,1],iso:1,rang:1,render:1,independ:1,restrict:1,unlik:4,alreadi:1,messag:[5,6,1],wasn:5,altzon:1,sometim:5,cat_file_head:1,master:[5,6,1],tom:1,feature1:1,tool:1,setuptool:3,sha1:[4,6,1],target:1,keyword:[5,6,1],provid:[4,3,5,6,1],tree:[0,5,6,1,4],project:[1,2,3,4,5,6],matter:1,explicitli:[5,1],fashion:1,raw:1,manner:1,strength:4,"__new__":1,treemodifi:1,latter:[4,1],ref_path:1,adapterstreamcl:1,plenti:1,though:[4,5,6,1],object:[0,1,3,4,5,6],what:[0,5,6,4],create_head:[6,1],stream_nam:1,bsd:3,typ:1,don:1,doc:1,doe:[5,1],notion:6,opposit:[4,1],cheapli:6,syntax:[5,6],read_cach:1,identifi:[4,5,6,1],involv:[3,6,1],absolut:1,explain:[6,1],configur:[5,6,1],new_commit:6,stop:1,new_origin:6,bar:5,"public":5,reread:1,commandlin:6,tree_sha:1,roadmap:[0,2],result:[4,6,1],respons:[5,1],fail:1,awar:1,new_path:1,databas:[0,3,6,1,4],awai:1,approach:6,attribut:[5,6,1],accord:1,resolve_blob:1,weak:4,extens:1,new_from_sha:1,protect:1,remote_ref:1,predessessor:1,hashabl:1,howev:3,valid_fil:1,against:[5,6,1],c1c7214dde86f76bc3e18806ac1f47c38b2b7a30:6,com:[3,5,6,1,2],tagged_d:1,asctim:6,assur:[5,1],ez_setup:5,tagger_tz_offset:1,diff:[0,5,6,1],guid:[0,4],assum:[3,1],"0x7f6598bd65a8":6,three:[5,6,1],been:[4,5,6,1],much:[5,6],interest:5,basic:3,"__len__":5,quickli:[5,1],to_native_path_linux:1,life:6,deeper:1,argument:[5,6,1],parent_commit:1,child:5,archive_tar:5,properti:[4,5,1],bitflag:1,"207c0c4418115df0d30820ab1a9acd2ea4bf4431":6,to_path:1,kwarg:1,inidc:1,sever:1,receiv:[4,5,1],make:[4,5,1],ouput_stream:1,big:4,complet:[5,1],a_blob:[5,1],hang:1,rais:[5,1],unhexlifi:4,kept:[5,1],undesir:1,config_writ:[5,6,1],thu:1,thi:[4,3,5,6,1],gzip:5,everyth:[4,5,1],left:1,protocol:5,just:[4,3,5,1],"563413aedbeda425d8d9dcbb744247d0c3e8a0ac":6,human:[6,1],yet:[5,1],previous:5,easi:[4,3,5,1],interfer:1,had:[5,1],is_valid:1,els:[4,1],save:1,gave:1,applic:[6,1],remoterefer:1,daemon:[5,1],ctime:1,specif:[4,5,6,1],arbitrari:5,manual:[3,6,1],underli:1,www:1,right:1,deal:1,intern:[4,5,1],a_commit:5,dear:1,successfulli:1,byronimo:[3,2],get_object_type_by_nam:1,subclass:[6,1],tracker:[0,3],transform_kwarg:1,condit:[5,6],foo:5,archive_tar_gz:5,plu:1,uncompress:[6,1],iter_tre:[5,1],parentless:5,deleted_fil:1,gmtime:[5,6],with_keep_cwd:1,unfortun:1,commit:[0,5,6,1,4],produc:[6,1],basenam:[5,1],encod:[5,1],blobfilt:1,wrap:[6,1],pyc:5,wai:[4,5,6,1],support:[4,5,1],transform:1,"class":[5,1],avail:[3,5,1],reli:1,gid:1,call:[4,5,6,1],head:[5,6,1],form:6,forc:1,get_entries_kei:5,"true":[5,6,1],reset:[6,1],new_nam:[6,1],maximum:1,tell:1,dens:6,emit:1,featur:[4,5,1],int_nano_second:1,create_tag:[6,1],"abstract":3,destinatin:1,exist:[5,6,1],check:[6,1],when:[4,5,6,1],actor:[6,1],test:[3,5,6,1],node:1,intend:1,benefici:4,why:[0,1,4],is_git_dir:1,intens:3,consid:[4,5,1],faster:[4,3,5],verify_utctz:1,concurrentwriteoper:5,ignor:1,time:[4,3,5,6,1],push:[6,1],write_sha:1,breadth:1,concept:3,chain:6,skip:[6,1],consum:[5,6,1],signific:4,serializ:1,depend:[4,3,5,1],list_from_str:5,graph:6,intermedi:1,indexentri:[5,1],sourc:[0,3,1],string:[5,6,1],string_dat:1,feasibl:1,brows:3,level:[4,3,6,1],did:[5,1],dif:[5,1],gitpython:[0,2,3,4,5,6],brother:1,iter:[5,6,1],item:[5,6,1],dir:[6,1],prevent:[6,1],slower:6,sign:1,cost:1,lazili:1,autointerrupt:1,uniform:1,current:[5,6,1],to_blob:1,filenam:1,file_path:1,deriv:[5,1],gener:[4,5,6,1],slow:4,modif:1,tree_entries_from_data:1,address:5,refernc:1,do_someth:6,wait:1,definintiion:5,behav:[4,5,6,1],extrem:4,commonli:1,repositori:[4,3,5,6,1],modul:[0,5,6,1,4],from_bas:1,marker:1,instal:[0,3],fetch_head:1,lighthous:2,memori:[0,5,6,4],handler:1,criteria:1,scope:1,checkout:[6,1],examin:[0,6,1],effort:4,uniqu:[5,6,1],cat:6,can:[1,2,3,4,5,6],purpos:1,claim:1,encapsul:1,stream:[4,3,5,6,1],create_from_tre:[5,1],int_seconds_since_epoch:1,gitcmd:[0,1],simul:1,from_blob:1,strikingli:4,alwai:[5,6,1],multipl:[4,5,6,1],lexigraph:1,id_abbrev:5,write:[4,5,6,1],anyon:5,pure:[4,3,5,6],map:1,max:5,clone:[3,5,6,1],spot:1,processstreamadapt:1,reop:5,date:[5,6,1],data:[4,3,5,6,1],practic:1,checkouterror:1,stdin:5,explicit:[5,1],predic:1,inform:[0,1,3,4,5,6],"switch":[0,5,6],preced:1,combin:1,tty:1,commits_sinc:5,equip:1,still:[4,5,1],pointer:[5,6],group:[3,5,1],git_python_trac:[5,1],window:1,mail:[0,3],main:[4,1],extension_data:1,non:[5,1],missing_ok:5,initi:[0,1,3,4,5,6],now:[4,5],introduct:6,term:5,name:[5,6,1],nosuchpatherror:1,drop:[6,1],subprocess_kwarg:1,replac:5,individu:[5,6,1],continu:1,happen:1,accomplish:6,hct:6,space:1,list_item:[5,1],correct:[5,1],state:1,getcwd:[5,1],git:[0,1,3,4,5,6],mime:1,b_blob_id:1,org:[3,1],"byte":[4,6,1],int_timezone_offset:1,suffici:[4,5],synchron:1,refus:5,thing:[4,5,6],place:[6,1],think:4,lambda:1,origin:[6,1],directli:[0,1,3,4,5,6],carri:[5,6,1],onc:[4,6,1],"long":6,oppos:1,blockinglockfil:1,open:6,ls_file:1,given:[5,6,1],silent:6,convent:5,necessarili:1,conveni:[4,5,6,1],fetchinfo:1,especi:4,object_type_nam:1,copi:[6,1],specifi:[5,6,1],forward:1,"short":[5,6,1],indexfilesha1writ:1,mostli:1,than:[4,5,6],serv:1,wide:[5,1],"0x2627c80":1,were:[4,5,6,1],posit:5,sai:6,preston:1,ani:[4,5,6,1],himself:1,"_cur_lin":1,destroi:6,note:[3,5,6,1],take:[4,5,6,1],e79b05161e4836e5fbf197aeb52515753e8d6ab6:6,noth:1,channel:6,begin:1,sure:[5,1],track:1,beta:[0,5],pair:1,renam:[4,5,6,1],later:1,quantiti:[3,6],unsuspect:1,subprocess:[6,1],hexsha:[4,5,6,1],concurr:1,b_mode:[5,1],carrai:1,onli:[4,5,6,1],failed_reason:1,activ:[5,6,1],plumb:3,dict:[5,1],overwritten:1,variou:6,get:[0,3,6,1],repr:5,repo:[0,1,3,4,5,6],cannot:[4,1],requir:[0,3,5,1,4],consist:[5,1],delete_tag:[6,1],yield:[6,1],where:[4,5,6,1],summari:[5,1],kernel:1,testcas:5,detect:1,entry_kei:[5,1],enumer:1,behind:1,between:[5,6,1],"import":[4,5,6,1],parent:[6,1],blame:[5,6,1],get_user_id:1,come:4,to_full_path:1,region:1,tutori:[0,3,6],improv:[4,5,1],overview:[0,3,4],period:1,dispatch:1,werner:1,colon:1,dangeri:1,mark:4,valueerror:1,former:5,those:1,refspec:1,"case":[4,3,5,6,1],int_time_seconds_since_epoch:1,invoc:[4,1],traverse_trees_recurs:1,stdout:1,henc:[4,5,1],destin:1,"__init__":1,develop:[4,6,1],author:[5,6,1],shastreamcl:1,same:[4,5,6,1],binari:[4,5,6,1],epoch:[6,1],html:1,document:[0,5,1],exhaust:3,closest:1,directoi:1,capabl:5,mani:4,footprint:[0,6,4],tradition:1,appropri:1,without:[4,5,6,1],binsha:[4,5,6,1],model:6,dereferenc:1,execut:[5,1],tip:6,rest:1,kill:1,aspect:5,touch:1,speed:1,except:[6,1],param:1,pile:1,blob:[0,5,6,1,4],working_tre:[6,1],real:[5,6],grit:5,around:1,read:[4,5,6,1],for_each_ref:6,world:[4,5],througout:1,threadsaf:1,integ:1,server:6,benefit:4,either:[4,3,1],output:[5,6,1],manag:1,yyyi:1,remote_head:1,parse_d:1,indexobject:1,join_path:1,assertionerror:1,slice:1,with_except:[5,1],achiev:[3,5],exit:5,iterablelist:[5,1],refer:[0,3,5,6,1],power:[3,6],found:[3,6,1,2],immut:6,do_something_with:6,comparison:[5,1],side:1,stand:1,act:1,is_dirti:[5,6,1],effici:[4,5],committer_d:5,invers:1,strip:5,your:[4,3,6,1],other_branch:6,log:[4,5,6,1],hex:1,overwrit:[6,1],start:[0,3,1,4],interfac:[4,5,1],low:[4,3],lot:6,enough:1,tupl:[6,1],longer:5,notat:1,dirti:[5,1],possibl:[4,5,1],"default":[4,5,6,1],default_index:1,uid:1,creat:[4,5,6,1],certain:[4,6],file:[4,3,5,6,1],type_str:1,merge_index:6,incorrect:1,again:[5,1],googl:[3,5],hybrid:4,prepend:1,field:[6,1],valid:[5,1],you:[0,1,3,4,5,6],sequenc:1,symbol:[6,1],reduc:[0,5,4],extended_output:1,spend:3,directori:[5,6,1],descript:[5,1],gitori:3,escap:[5,6],dst:1,scm:1,represent:[4,1],all:[4,3,5,6,1],forget:1,abil:6,follow:[3,5,6,1],disk:1,init:[3,5,6,1],program:1,yiel:1,global:1,far:5,subcommand:5,util:[0,5,1,4],fall:5,veri:[4,5,6,1],unalt:1,dulwich:1,list:[0,1,2,3,5,6],adjust:[4,5,6,1],stderr:[5,1],small:[6,1],git_python:5,zero:[5,1],iter_commit:[5,6,1],pass:[6,1],tagrefer:1,sub:[5,6],section:[3,6],rval:1,abl:1,delet:[5,6,1],version:[4,3,5,1],method:[5,6,1],full:[5,1,2],hash:[4,5,6],lighthouseapp:[3,2],sophist:6,behaviour:[5,1],committ:[6,1],stream_copi:1,modifi:[0,5,6,1],valu:[4,6,1],search:[0,1,4],popen:1,brutal:6,prior:5,amount:[4,5,1],nosetest:3,"_all_":1,pick:5,narrow:1,max_block_time_:1,readabl:[6,1],put:[6,1],cowardli:5,aggress:1,hexadecim:[4,5],distinct:6,two:[5,6,1],taken:1,forcefulli:1,more:[0,1,3,4,5,6],reachabl:1,desir:1,objectdatabas:1,abspath:[6,1],commit_count:5,flag:[5,6,1],from_path:1,known:1,cach:[4,5,1],init_bar:5,none:[5,6,1],hous:1,my_new_branch:6,dev:1,histori:[6,1],remain:1,"6825a94104164d9f0f5632607bebd2a32a3579e5":6,useabl:1,content_sha:1,share:1,accept:5,max_count:[6,1],huge:[4,6],newlin:5,rather:5,anoth:[6,1],reject:1,simpl:[4,5,6,1],resourc:[3,6,1],untracked_fil:[5,6,1],reflect:[5,1],trier:6,fast_forward:1,associ:[1,2],github:3,set_don:1,ambigu:5,caus:[4,5,1],callback:1,config_read:[5,6,1],help:4,a_mod:1,held:1,through:[4,3,5,6,1],hierarchi:5,suffer:1,paramet:[5,1],style:1,mtrier:6,delete_head:[6,1],exact:1,lockedfd:5,blob_data:6,epoc:5,b_blob:[5,1],might:[4,6,1],alter:[4,1],"return":[5,6,1],timestamp:1,framework:5,detach:1,data_stream:[5,6,1],from_str:5,gitcommanderror:[5,1],easili:[4,3,6],token:1,fulli:1,unicod:5,trailer:1,output_stream:1,weight:1,realli:1,expect:[3,1],daemon_export:[5,1],publish:1,path_prefix:1,print:1,"_from_str":5,occurr:4,qualifi:1,uncommit:1,advanc:1,porcelain:3,pub:1,reason:1,base:[0,5,6,1],ask:[5,1],repjrel:5,thrown:1,sytem:1,thread:[5,1],omit:1,old_commit:1,lifetim:1,find_al:5,hcommit:6,major:4,oserror:1,commit_diff:5,number:[6,1],done:[3,6,1],construct:1,htc:6,miss:[6,1],differ:[4,5,1],script:3,interact:3,cat_file_al:1,least:1,iter_par:1,scheme:5,store:[5,1],option:[5,6,1],parm:1,part:[5,1],pars:[5,1],kind:[5,1],create_remot:[6,1],whenev:1,remot:[0,3,5,6,1],remov:[5,6,1],tree_to_stream:1,working_tree_dir:[5,1],tmp_file_path:1,str:[6,1],consumpt:[4,5],beforehand:[4,1],packag:[3,5,1],"null":1,b_commit:5,equival:1,self:1,also:[4,3,5,6,1],accessor:1,tree_relative_path:1,common_path:1,distribut:3,english:1,reach:4,react:1,most:4,plai:1,appear:[5,1],exc:[4,5],clear:1,destruct:1,cur_count:1,clean:6,myrefer:1,usual:[5,6,1],post_clear_cach:1,some_branch:6,fine:5,find:[5,6,1],penalti:4,existing_fil:6,get_object_head:1,ineffect:1,writer:[6,1],referernc:5,nativ:[4,5,1],git_dir:[5,1],my_new_symref:1,diffabl:[6,1],rfc:1,common:[5,6,1],set:[4,5,6,1],creator:1,byron:3,"var":6,see:[3,5,1],bare:[5,6,1],arg:1,close:[5,1],someth:1,execute_kwarg:1,reus:[4,1],a006b5b1a8115185a228b7514cdcd46fed90dc92:6,altern:[4,3,1],signatur:[4,5,1],numer:1,sole:1,popul:5,both:1,last:5,foreign:6,dynmic:5,load:6,simpli:1,point:[4,5,6,1],instanti:[4,5,6],schedul:3,iter_blob:[6,1],remote_nam:1,suppli:1,backend:4,content_from_str:5,devic:1,due:1,empti:[6,1],implicit:4,unambigu:5,tmp_index:6,great:4,understand:[0,6],func:1,demand:[4,5,1],look:[4,6],"while":1,unifi:5,abov:[6,1],error:[0,5,1,4],fun:1,loos:4,loop:1,pack:[4,6],itself:[4,5,6,1],costli:1,mojombo:1,usulli:1,decor:1,minim:[4,1],belong:5,higher:[4,6],optim:[4,3],painless:4,wherea:1,temporari:[6,1],user:[5,6,1],wherev:1,chang:[4,5,6,1],recent:5,travers:[5,6,1],task:[3,2],lib:6,older:3,entri:[5,6,1],add_uncheck:1,clone_from:1,config_level:1,git_working_dir:1,new_fil:1,input:[5,1],subsequ:1,bin:1,format:[5,6,1],parse_actor_and_d:1,bit:[5,1],characterist:[4,6],write_tre:[5,1],resolv:1,encount:1,often:1,stat_mode_to_index_mod:1,creation:[5,1],some:[3,5,1],back:[5,1],understood:1,symref:1,scale:5,per:[4,6,1],larg:[4,3,6],proc:1,nose:3,previou:[6,1],run:[4,3,1],viabl:1,step:[4,6],id_attr:1,stream_object_data:1,block:1,within:[5,1],ostream:1,next:[6,1],span:1,question:1,fast:[4,6,1],custom:1,includ:[4,1,2],suit:5,pushurl:[6,1],null_hex_sha:5,properli:[5,1],translat:6,newer:3,line:[4,3,5,1],write_tree_from_cach:1,info:[5,1],utc:1,utf:5,invalidgitrepositoryerror:1,caller:1,my_tag:6,my_untracked_fil:6,readlin:1,similar:[4,6,1],constant:1,parser:[5,1],doesn:[5,1],repres:[5,6,1],index_entry_inst:1,committed_d:[6,1],cloned_repo:6,invalid:1,"1c09f116cbc2cb4100fb6935bb162daa4723f455":1,mock:[3,5],nice:[4,5,1],pushinfo:1,from_tre:[6,1],authored_d:[5,6,1],algorithm:1,depth:[6,1],as_edg:1,data_str:1,code:[0,3,1,4],partial:1,edg:1,queri:[4,5,6,1],join_path_n:1,privat:5,gitpthon:3,istream:1,new_repo:6,b_path:[5,1],method_miss:5,retriev:[5,6,1],implicitli:6,a91c45eee0b41bf3cdaad3418ca3850664c4a4b4:6,michael:[3,6],"try":5,pleas:1,impli:[5,1],merged_index:6,download:3,odb:1,compat:[5,1],index:[0,3,5,6,1],compar:[5,6,1],mainlin:3,resembl:1,access:[4,3,5,6,1],traverse_tree_recurs:1,iteritem:6,len:1,let:6,safer:6,becom:[5,6,1],sinc:[5,6,1],convert:[4,5,6,1],convers:[4,5,6],id_attribut:1,headcommit:6,dummy_repo:6,tagobject:1,other_url:6,typic:1,apr:1,appli:[4,1],somwhat:1,submodul:[0,3,6,1],unmergedentrieserror:[5,1],api:[0,3,5,1],from:[0,1,3,4,5,6],commun:1,iter_change_typ:[6,1],binascii:4,upgrad:[0,5,4],occour:1,few:[4,6,1],failed_fil:1,sort:1,src:1,tree_entri:1,account:1,"07t22":1,alia:[5,6,1],repostori:1,create_patch:1,fetch:[6,1],control:5,tar:6,process:[5,6,1],lock:1,usign:1,f7eb5df2e465ab621b1db3f5714850d6732cfed2:6,high:[3,6],tag:[0,5,6,1,4],op_mask:1,serial:1,everywher:5,filepath:1,reva:1,baseindexentri:1,revb:1,subdirectori:6,instead:[4,5,6,1],overridden:1,op_cod:1,essenti:[4,6],light:1,correspond:[6,1],issu:[0,3,5,1],allow:[4,3,5,6,1],size_as_int:1,ouput:1,move:[5,1],aed1d5c4b31d5027:5,lockfil:1,treeish:[5,1],fork_bar:5,therefor:1,handl:[0,1,3,4,5,6],mention:[6,1],delete_remot:[6,1],front:1,successor:1,anyth:6,wdiff:6,mode:[4,5,6,1],a871e79d59cf8488cac4af0c8f990b7a989e2b53:6,chunk:[4,1],filehandl:1,"static":5,our:1,patch:[4,1],special:[5,6,1],out:[4,5,1],variabl:[5,1],rev:[4,5,1],suitabl:[4,5,1],rel:1,wich:1,ref:[0,5,6,1],ancestri:[6,1],a95eeb2a7082212c197cabbf2539185ec74ed0e8:6,manipul:[5,6,1],standalon:1,dictionari:[5,1],releas:[5,1],afterward:[6,1],shortest:1,could:[5,1],keep:[4,1],length:[5,1],diffindex:[5,6,1],timezon:1,softwar:1,altz:1,"0x26abed8":1,mai:[4,3,5,6,1],facil:1,branch_first:1,unknown:1,licens:[0,3],mkdir:1,system:[4,3,6,1],wrapper:1,a_path:[5,1],"final":[3,6,1],shell:[5,1],"_list_from_str":5,accompani:1,exactli:[5,1],prune:[5,1],structur:[4,3],commits_between:5,storabl:6,clearli:4,requri:1,have:[4,3,5,6,1],tabl:0,need:[4,5,6,1],visit_onc:1,my_new_fil:6,which:[4,3,5,6,1],singl:1,unless:[5,1],who:4,test_remot:6,write_cach:1,stream_data:[6,1],to_native_path_window:1,new_tag:6,gitcmdobjectdb:[4,6],rename_to:[5,1],url:[5,6,1],gather:1,pipe:1,determin:[6,1],constrain:5,"_cach":1,fact:1,text:1,"0x26386e0":1,trivial:1,redirect:5,locat:1,should:[0,3,5,1,4],with_extended_output:1,suppos:[6,1],active_branch:[5,1],local:[6,1],remoteprogress:1,contribut:4,pull:[6,1],pypi:3,increas:5,organ:3,bisect:5,sha:[4,5,1],stuff:5,integr:4,contain:[5,6,1],tagger:1,grab:1,conform:5,unimport:5,diff_ad:6,temporarili:1,gitcommand:5,confort:5,name_rev:[5,1],gmail:6,mileston:[3,2],statu:[5,1],wire:1,correctli:1,favor:[5,1],written:[5,6,1],progress:1,is_detach:1,kei:1,altz_to_utctz_str:1,entir:5,addit:[4,5,6,1],equal:5,instanc:[4,5,6,1],grain:5,freeli:6,strftime:6,entries_dict:1,walk:3,respect:[5,1],author_tz_offset:1,addition:[4,3,6],compos:6,compon:[5,1],besid:1,assert:6,untrack:[5,6,1],togeth:1,"0x2627c08":1,present:[5,1],replic:5,with_statu:5,plain:[5,1],harder:5,defin:1,archiv:[5,6,1],lightweight:1,revis:[5,6,1],utctz_to_altz:1,member:[5,1],python:[4,3,5,6,1],catfilecontentstream:1,unmerged_blob:1,http:[3,5,1,2],badobject:1,effect:[4,5,6,1],usecas:6,commit_delta_from:5,chunk_siz:1,whole:1,well:[4,3,6,1],versatil:[5,1],"__div__":5,exampl:[5,6,1],command:[4,3,5,6,1],filesystem:6,undefin:1,latest:[3,6,1],less:[4,5,6],obtain:[0,1,3,4,5,6],detail:1,line_drop:1,merge_tre:1,wed:6,is_git_directori:1,add:[5,6,1],with_raw_output:5,match:[6,1],rememb:1,dest:1,know:[5,6,1],recurs:[3,5,6,1],insert:1,like:[4,3,5,6,1],lost:1,async:3,page:[0,6],revers:5,linux:6,"export":[5,1],guarante:1,librari:3,local_ref:1,lead:[4,1],"__getattr__":5,new_branch:[6,1],leav:1,encourag:3,usag:[4,5,6],facilit:1,although:1,offset:1,stage:[6,1],about:[4,3,5,6,1],actual:[4,5,6,1],constructor:5,fals:[5,6,1],discard:1,own:[4,6,1],remote_ref_str:1,easy_instal:3,automat:1,dataset:3,mere:[5,1],merg:[5,6,1],transfer:[5,1],iter_item:[5,1],biggest:4,rev_pars:1,dereference_recurs:1,"function":[0,1,3,4,5,6],indexfil:[5,6,1],gitignor:1,unexpect:1,committer_tz_offset:1,gain:1,eas:[5,6],bug:5,count:[5,1],succe:1,made:[5,6,1],wise:1,whether:[5,6,1],asynchron:3,record:6,below:1,limit:1,tini:4,otherwis:1,problem:5,new_head:1,"int":[5,1],dure:[4,1],tdiff:6,implement:[4,3,5,6,1],mtime:1,probabl:[6,1],"0x2638758":1,other:[5,6,1],lookup:5,futur:4,branch:[0,5,6,1,4],stat:[5,6,1],perforam:1,idiff:6,ignore_tree_extension_data:1,sphinx:5,portion:1},titles:["GitPython Documentation","API Reference","Roadmap","Overview / Install","Whats New in 0.3","Changelog","GitPython Tutorial"],modules:{"git.objects.tree":1,"git.cmd":1,"git.diff":1,"git.errors":1,"git.config":1,"git.objects.tag":1,"git.objects.blob":1,"git.repo.base":1,"git.objects.submodule":1,"git.objects.fun":1,"git.index.typ":1,"git.objects.base":1,"git.util":1,"git.repo.fun":1,"git.objects.util":1,"git.objects.commit":1,"git.index.fun":1,"git.refs":1,"git.index.base":1,"git.index.util":1,"git.remote":1},descrefs:{"git.objects.tree":{Tree:[1,4],TreeModifier:[1,4]},"git.refs.HEAD":{reset:[1,1]},"git.errors":{GitCommandError:[1,3],NoSuchPathError:[1,3],InvalidGitRepositoryError:[1,3]},"git.objects.util.Traversable":{traverse:[1,1]},"git.refs.TagReference":{commit:[1,0],create:[1,2],tag:[1,0],object:[1,0],"delete":[1,2]},"git.remote.FetchInfo":{name:[1,0],note:[1,0],old_commit:[1,0],flags:[1,0],commit:[1,0],ref:[1,0]},"git.index.typ":{BaseIndexEntry:[1,4],IndexEntry:[1,4],BlobFilter:[1,4]},"git.objects.tree.TreeModifier":{add:[1,1],set_done:[1,1],add_unchecked:[1,1]},"git.remote.PushInfo":{local_ref:[1,0],remote_ref:[1,0],summary:[1,0],old_commit:[1,0],flags:[1,0],remote_ref_string:[1,0]},"git.util.Stats":{files:[1,0],total:[1,0]},"git.index.base":{CheckoutError:[1,3],IndexFile:[1,4]},"git.index.util":{git_working_dir:[1,5],default_index:[1,5],TemporaryFileSwap:[1,4],post_clear_cache:[1,5]},"git.index.base.IndexFile":{resolve_blobs:[1,1],entry_key:[1,2],write_tree:[1,1],repo:[1,0],commit:[1,1],update:[1,1],move:[1,1],remove:[1,1],unmerged_blobs:[1,1],reset:[1,1],write:[1,1],merge_tree:[1,1],add:[1,1],version:[1,0],iter_blobs:[1,1],from_tree:[1,2],entries:[1,0],diff:[1,1],path:[1,0],checkout:[1,1],"new":[1,2]},"git.objects.blob.Blob":{mime_type:[1,0]},"git.util.IndexFileSHA1Writer":{sha1:[1,0],f:[1,0],write:[1,1],close:[1,1],write_sha:[1,1],tell:[1,1]},"git.refs.SymbolicReference":{rename:[1,1],dereference_recursive:[1,2],to_full_path:[1,2],reference:[1,0],from_path:[1,2],create:[1,2],iter_items:[1,2],name:[1,0],repo:[1,0],is_valid:[1,1],path:[1,0],commit:[1,0],is_detached:[1,0],ref:[1,0],"delete":[1,2]},"git.refs.Reference":{create:[1,2],object:[1,0],iter_items:[1,2],name:[1,0]},"git.objects.blob":{Blob:[1,4]},"git.repo.base":{Repo:[1,4]},"git.util.Iterable":{iter_items:[1,2],list_items:[1,2]},"git.objects.fun":{traverse_trees_recursive:[1,5],traverse_tree_recursive:[1,5],tree_to_stream:[1,5],tree_entries_from_data:[1,5]},"git.diff.DiffIndex":{iter_change_type:[1,1]},"git.remote.RemoteProgress":{line_dropped:[1,1],update:[1,1]},"git.index.fun":{entry_key:[1,5],read_cache:[1,5],write_cache:[1,5],stat_mode_to_index_mode:[1,5],write_tree_from_cache:[1,5]},"git.remote":{PushInfo:[1,4],Remote:[1,4],RemoteProgress:[1,4],FetchInfo:[1,4]},"git.diff.Diff":{new_file:[1,0],a_blob:[1,0],renamed:[1,0],rename_from:[1,0],diff:[1,0],b_mode:[1,0],a_mode:[1,0],deleted_file:[1,0],b_blob:[1,0],rename_to:[1,0]},"git.index.util.TemporaryFileSwap":{tmp_file_path:[1,0],file_path:[1,0]},"git.index.typ.BlobFilter":{paths:[1,0]},"git.cmd":{Git:[1,4]},"git.objects.tag.TagObject":{tagged_date:[1,0],object:[1,0],tag:[1,0],tagger_tz_offset:[1,0],tagger:[1,0],message:[1,0]},"git.config":{GitConfigParser:[1,0]},"git.refs.Head":{rename:[1,1],create:[1,2],checkout:[1,1],"delete":[1,2]},"git.objects.tag":{TagObject:[1,4]},"git.objects.util":{utctz_to_altz:[1,5],altz_to_utctz_str:[1,5],get_object_type_by_name:[1,5],verify_utctz:[1,5],ProcessStreamAdapter:[1,4],Traversable:[1,4],parse_date:[1,5],get_user_id:[1,5],parse_actor_and_date:[1,5]},"git.objects.base":{IndexObject:[1,4],Object:[1,4]},"git.objects.commit.Commit":{author_tz_offset:[1,0],committer:[1,0],stats:[1,0],encoding:[1,0],author:[1,0],tree:[1,0],count:[1,1],committer_tz_offset:[1,0],summary:[1,0],iter_items:[1,2],parents:[1,0],committed_date:[1,0],iter_parents:[1,1],message:[1,0],name_rev:[1,0],authored_date:[1,0],create_from_tree:[1,2]},"git.util":{to_native_path_linux:[1,5],stream_copy:[1,5],BlockingLockFile:[1,4],to_native_path_windows:[1,5],join_path_native:[1,5],join_path:[1,5],IterableList:[1,4],Stats:[1,4],LockFile:[1,4],Iterable:[1,4],IndexFileSHA1Writer:[1,4]},"git.objects.base.Object":{repo:[1,0],hexsha:[1,0],stream_data:[1,1],binsha:[1,0],"new":[1,2],data_stream:[1,0],new_from_sha:[1,2],size:[1,0]},"git.refs.RemoteReference":{remote_head:[1,0],remote_name:[1,0],"delete":[1,2]},"git.refs":{HEAD:[1,4],Tag:[1,0],Reference:[1,4],SymbolicReference:[1,4],Head:[1,4],RemoteReference:[1,4],TagReference:[1,4]},"git.index.typ.IndexEntry":{uid:[1,0],dev:[1,0],ctime:[1,0],gid:[1,0],mtime:[1,0],from_base:[1,2],size:[1,0],inode:[1,0],from_blob:[1,2]},"git.repo.base.Repo":{references:[1,0],create_tag:[1,1],config_reader:[1,1],refs:[1,0],is_dirty:[1,1],tag:[1,1],bare:[1,0],config_writer:[1,1],daemon_export:[1,0],odb:[1,0],archive:[1,1],alternates:[1,0],index:[1,0],delete_remote:[1,1],heads:[1,0],iter_commits:[1,1],init:[1,2],delete_head:[1,1],working_dir:[1,0],active_branch:[1,0],remote:[1,1],head:[1,0],description:[1,0],tags:[1,0],clone:[1,1],untracked_files:[1,0],create_remote:[1,1],remotes:[1,0],git_dir:[1,0],create_head:[1,1],iter_trees:[1,1],git:[1,0],blame:[1,1],branches:[1,0],delete_tag:[1,1],tree:[1,1],working_tree_dir:[1,0],commit:[1,1],rev_parse:[1,1],clone_from:[1,2]},"git.diff":{Diff:[1,4],DiffIndex:[1,4],Diffable:[1,4]},"git.cmd.Git.AutoInterrupt":{args:[1,0],proc:[1,0],wait:[1,1]},"git.remote.Remote":{rename:[1,1],pull:[1,1],name:[1,0],config_reader:[1,0],create:[1,2],iter_items:[1,2],remove:[1,2],fetch:[1,1],repo:[1,0],add:[1,2],rm:[1,2],push:[1,1],config_writer:[1,0],update:[1,1],refs:[1,0],stale_refs:[1,0]},"git.objects.base.IndexObject":{path:[1,0],abspath:[1,0],name:[1,0],mode:[1,0]},"git.objects.submodule":{Submodule:[1,4]},"git.repo.fun":{touch:[1,5],rev_parse:[1,5],is_git_dir:[1,5]},"git.cmd.Git":{cat_file_header:[1,0],execute:[1,1],stream_object_data:[1,1],clear_cache:[1,1],AutoInterrupt:[1,4],transform_kwargs:[1,1],get_object_header:[1,1],working_dir:[1,0],cat_file_all:[1,0],get_object_data:[1,1],CatFileContentStream:[1,4]},"git.index.typ.BaseIndexEntry":{hexsha:[1,0],flags:[1,0],binsha:[1,0],path:[1,0],to_blob:[1,1],from_blob:[1,2],stage:[1,0],mode:[1,0]},"git.diff.Diffable":{Index:[1,4],diff:[1,1]},"git.objects.tree.Tree":{traverse:[1,1],cache:[1,0],blobs:[1,0],trees:[1,0]},"git.cmd.Git.CatFileContentStream":{read:[1,1],readline:[1,1],readlines:[1,1],next:[1,1]},"git.objects.commit":{Commit:[1,4]}},filenames:["index","reference","roadmap","intro","whatsnew","changes","tutorial"]}) \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/tutorial.html b/doc/doc_index/0.3.0/tutorial.html
deleted file mode 100644
index 012032c5..00000000
--- a/doc/doc_index/0.3.0/tutorial.html
+++ /dev/null
@@ -1,485 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>GitPython Tutorial &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="index.html" />
- <link rel="next" title="API Reference" href="reference.html" />
- <link rel="prev" title="Whats New in 0.3" href="whatsnew.html" />
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li class="right" >
- <a href="reference.html" title="API Reference"
- accesskey="N">next</a> |</li>
- <li class="right" >
- <a href="whatsnew.html" title="Whats New in 0.3"
- accesskey="P">previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
- <div class="section" id="gitpython-tutorial">
-<span id="tutorial-label"></span><h1>GitPython Tutorial<a class="headerlink" href="#gitpython-tutorial" title="Permalink to this headline">¶</a></h1>
-<p>GitPython provides object model access to your git repository. This tutorial is composed of multiple sections, each of which explains a real-life usecase.</p>
-<div class="section" id="initialize-a-repo-object">
-<h2>Initialize a Repo object<a class="headerlink" href="#initialize-a-repo-object" title="Permalink to this headline">¶</a></h2>
-<p>The first step is to create a <tt class="docutils literal"><span class="pre">Repo</span></tt> object to represent your repository:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="kn">from</span> <span class="nn">git</span> <span class="kn">import</span> <span class="o">*</span>
-<span class="n">repo</span> <span class="o">=</span> <span class="n">Repo</span><span class="p">(</span><span class="s">&quot;/Users/mtrier/Development/git-python&quot;</span><span class="p">)</span>
-<span class="k">assert</span> <span class="n">repo</span><span class="o">.</span><span class="n">bare</span> <span class="o">==</span> <span class="bp">False</span>
-</pre></div>
-</div>
-<p>In the above example, the directory <tt class="docutils literal"><span class="pre">/Users/mtrier/Development/git-python</span></tt> is my working repository and contains the <tt class="docutils literal"><span class="pre">.git</span></tt> directory. You can also initialize GitPython with a <em>bare</em> repository:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span> <span class="o">=</span> <span class="n">Repo</span><span class="o">.</span><span class="n">init</span><span class="p">(</span><span class="s">&quot;/var/git/git-python.git&quot;</span><span class="p">,</span> <span class="n">bare</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-<span class="k">assert</span> <span class="n">repo</span><span class="o">.</span><span class="n">bare</span> <span class="o">==</span> <span class="bp">True</span>
-</pre></div>
-</div>
-<p>A repo object provides high-level access to your data, it allows you to create and delete heads, tags and remotes and access the configuration of the repository:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">config_reader</span><span class="p">()</span> <span class="c"># get a config reader for read-only access</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">config_writer</span><span class="p">()</span> <span class="c"># get a config writer to change configuration</span>
-</pre></div>
-</div>
-<p>Query the active branch, query untracked files or whether the repository data has been modified:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">is_dirty</span><span class="p">()</span>
-<span class="bp">False</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">untracked_files</span>
-<span class="p">[</span><span class="s">&#39;my_untracked_file&#39;</span><span class="p">]</span>
-</pre></div>
-</div>
-<p>Clone from existing repositories or initialize new empty ones:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">cloned_repo</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">clone</span><span class="p">(</span><span class="s">&quot;to/this/path&quot;</span><span class="p">)</span>
-<span class="n">new_repo</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">init</span><span class="p">(</span><span class="s">&quot;path/for/new/repo&quot;</span><span class="p">)</span>
-</pre></div>
-</div>
-<p>Archive the repository contents to a tar file:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">archive</span><span class="p">(</span><span class="nb">open</span><span class="p">(</span><span class="s">&quot;repo.tar&quot;</span><span class="p">,</span><span class="s">&#39;w&#39;</span><span class="p">))</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="object-databases">
-<h2>Object Databases<a class="headerlink" href="#object-databases" title="Permalink to this headline">¶</a></h2>
-<p><tt class="docutils literal"><span class="pre">Repo</span></tt> instances are powered by its object database instance which will be used when extracting any data, or when writing new objects.</p>
-<p>The type of the database determines certain performance characteristics, such as the quantity of objects that can be read per second, the resource usage when reading large data files, as well as the average memory footprint of your application.</p>
-<div class="section" id="gitdb">
-<h3>GitDB<a class="headerlink" href="#gitdb" title="Permalink to this headline">¶</a></h3>
-<p>The GitDB is a pure-python implementation of the git object database. It is the default database to use in GitPython 0.3. Its uses less memory when handling huge files, but will be 2 to 5 times slower when extracting large quantities small of objects from densely packed repositories:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span> <span class="o">=</span> <span class="n">Repo</span><span class="p">(</span><span class="s">&quot;path/to/repo&quot;</span><span class="p">,</span> <span class="n">odbt</span><span class="o">=</span><span class="n">GitDB</span><span class="p">)</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="gitcmdobjectdb">
-<h3>GitCmdObjectDB<a class="headerlink" href="#gitcmdobjectdb" title="Permalink to this headline">¶</a></h3>
-<p>The git command database uses persistent git-cat-file instances to read repository information. These operate very fast under all conditions, but will consume additional memory for the process itself. When extracting large files, memory usage will be much higher than the one of the <tt class="docutils literal"><span class="pre">GitDB</span></tt>:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span> <span class="o">=</span> <span class="n">Repo</span><span class="p">(</span><span class="s">&quot;path/to/repo&quot;</span><span class="p">,</span> <span class="n">odbt</span><span class="o">=</span><span class="n">GitCmdObjectDB</span><span class="p">)</span>
-</pre></div>
-</div>
-</div>
-</div>
-<div class="section" id="examining-references">
-<h2>Examining References<a class="headerlink" href="#examining-references" title="Permalink to this headline">¶</a></h2>
-<p>References are the tips of your commit graph from which you can easily examine the history of your project:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">heads</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">heads</span>
-<span class="n">master</span> <span class="o">=</span> <span class="n">heads</span><span class="o">.</span><span class="n">master</span> <span class="c"># lists can be accessed by name for convenience</span>
-<span class="n">master</span><span class="o">.</span><span class="n">commit</span> <span class="c"># the commit pointed to by head called master</span>
-<span class="n">master</span><span class="o">.</span><span class="n">rename</span><span class="p">(</span><span class="s">&quot;new_name&quot;</span><span class="p">)</span> <span class="c"># rename heads</span>
-</pre></div>
-</div>
-<p>Tags are (usually immutable) references to a commit and/or a tag object:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">tags</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">tags</span>
-<span class="n">tagref</span> <span class="o">=</span> <span class="n">tags</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span>
-<span class="n">tagref</span><span class="o">.</span><span class="n">tag</span> <span class="c"># tags may have tag objects carrying additional information</span>
-<span class="n">tagref</span><span class="o">.</span><span class="n">commit</span> <span class="c"># but they always point to commits</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">delete_tag</span><span class="p">(</span><span class="n">tagref</span><span class="p">)</span> <span class="c"># delete or</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">create_tag</span><span class="p">(</span><span class="s">&quot;my_tag&quot;</span><span class="p">)</span> <span class="c"># create tags using the repo for convenience</span>
-</pre></div>
-</div>
-<p>A symbolic reference is a special case of a reference as it points to another reference instead of a commit:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">head</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">head</span> <span class="c"># the head points to the active branch/ref</span>
-<span class="n">master</span> <span class="o">=</span> <span class="n">head</span><span class="o">.</span><span class="n">reference</span> <span class="c"># retrieve the reference the head points to</span>
-<span class="n">master</span><span class="o">.</span><span class="n">commit</span> <span class="c"># from here you use it as any other reference</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="modifying-references">
-<h2>Modifying References<a class="headerlink" href="#modifying-references" title="Permalink to this headline">¶</a></h2>
-<p>You can easily create and delete reference types or modify where they point to:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">delete_head</span><span class="p">(</span><span class="s">&#39;master&#39;</span><span class="p">)</span> <span class="c"># delete an existing head</span>
-<span class="n">master</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">create_head</span><span class="p">(</span><span class="s">&#39;master&#39;</span><span class="p">)</span> <span class="c"># create a new one</span>
-<span class="n">master</span><span class="o">.</span><span class="n">commit</span> <span class="o">=</span> <span class="s">&#39;HEAD~10&#39;</span> <span class="c"># set branch to another commit without changing index or working tree</span>
-</pre></div>
-</div>
-<p>Create or delete tags the same way except you may not change them afterwards:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">new_tag</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">create_tag</span><span class="p">(</span><span class="s">&#39;my_tag&#39;</span><span class="p">,</span> <span class="s">&#39;my message&#39;</span><span class="p">)</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">delete_tag</span><span class="p">(</span><span class="n">new_tag</span><span class="p">)</span>
-</pre></div>
-</div>
-<p>Change the symbolic reference to switch branches cheaply ( without adjusting the index or the working copy ):</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">new_branch</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">create_head</span><span class="p">(</span><span class="s">&#39;new_branch&#39;</span><span class="p">)</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">head</span><span class="o">.</span><span class="n">reference</span> <span class="o">=</span> <span class="n">new_branch</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="understanding-objects">
-<h2>Understanding Objects<a class="headerlink" href="#understanding-objects" title="Permalink to this headline">¶</a></h2>
-<p>An Object is anything storable in git&#8217;s object database. Objects contain information about their type, their uncompressed size as well as the actual data. Each object is uniquely identified by a binary SHA1 hash, being 20 bytes in size.</p>
-<p>Git only knows 4 distinct object types being Blobs, Trees, Commits and Tags.</p>
-<p>In Git-Python, all objects can be accessed through their common base, compared and hashed. They are usually not instantiated directly, but through references or specialized repository functions:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">hc</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">head</span><span class="o">.</span><span class="n">commit</span>
-<span class="n">hct</span> <span class="o">=</span> <span class="n">hc</span><span class="o">.</span><span class="n">tree</span>
-<span class="n">hc</span> <span class="o">!=</span> <span class="n">hct</span>
-<span class="n">hc</span> <span class="o">!=</span> <span class="n">repo</span><span class="o">.</span><span class="n">tags</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span>
-<span class="n">hc</span> <span class="o">==</span> <span class="n">repo</span><span class="o">.</span><span class="n">head</span><span class="o">.</span><span class="n">reference</span><span class="o">.</span><span class="n">commit</span>
-</pre></div>
-</div>
-<p>Common fields are:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">hct</span><span class="o">.</span><span class="n">type</span>
-<span class="s">&#39;tree&#39;</span>
-<span class="n">hct</span><span class="o">.</span><span class="n">size</span>
-<span class="mf">166</span>
-<span class="n">hct</span><span class="o">.</span><span class="n">hexsha</span>
-<span class="s">&#39;a95eeb2a7082212c197cabbf2539185ec74ed0e8&#39;</span>
-<span class="n">hct</span><span class="o">.</span><span class="n">binsha</span>
-<span class="s">&#39;binary 20 byte sha1&#39;</span>
-</pre></div>
-</div>
-<p>Index Objects are objects that can be put into git&#8217;s index. These objects are trees, blobs and submodules which additionally know about their path in the filesystem as well as their mode:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">hct</span><span class="o">.</span><span class="n">path</span> <span class="c"># root tree has no path</span>
-<span class="s">&#39;&#39;</span>
-<span class="n">hct</span><span class="o">.</span><span class="n">trees</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span><span class="o">.</span><span class="n">path</span> <span class="c"># the first subdirectory has one though</span>
-<span class="s">&#39;dir&#39;</span>
-<span class="n">htc</span><span class="o">.</span><span class="n">mode</span> <span class="c"># trees have the mode of a linux directory</span>
-<span class="mf">040000</span>
-<span class="s">&#39;</span><span class="si">%o</span><span class="s">&#39;</span> <span class="o">%</span> <span class="n">htc</span><span class="o">.</span><span class="n">blobs</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span><span class="o">.</span><span class="n">mode</span> <span class="c"># blobs have a specific mode though comparable to a standard linux fs</span>
-<span class="mf">100644</span>
-</pre></div>
-</div>
-<p>Access blob data (or any object data) directly or using streams:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">htc</span><span class="o">.</span><span class="n">blobs</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span><span class="o">.</span><span class="n">data_stream</span><span class="o">.</span><span class="n">read</span><span class="p">()</span> <span class="c"># stream object to read data from</span>
-<span class="n">htc</span><span class="o">.</span><span class="n">blobs</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span><span class="o">.</span><span class="n">stream_data</span><span class="p">(</span><span class="nb">open</span><span class="p">(</span><span class="s">&quot;blob_data&quot;</span><span class="p">,</span> <span class="s">&quot;w&quot;</span><span class="p">))</span> <span class="c"># write data to given stream</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="the-commit-object">
-<h2>The Commit object<a class="headerlink" href="#the-commit-object" title="Permalink to this headline">¶</a></h2>
-<p>Commit objects contain information about a specific commit. Obtain commits using references as done in <a class="reference internal" href="#examining-references">Examining References</a> or as follows.</p>
-<p>Obtain commits at the specified revision:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">commit</span><span class="p">(</span><span class="s">&#39;master&#39;</span><span class="p">)</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">commit</span><span class="p">(</span><span class="s">&#39;v0.1&#39;</span><span class="p">)</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">commit</span><span class="p">(</span><span class="s">&#39;HEAD~10&#39;</span><span class="p">)</span>
-</pre></div>
-</div>
-<p>Iterate 100 commits:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">iter_commits</span><span class="p">(</span><span class="s">&#39;master&#39;</span><span class="p">,</span> <span class="n">max_count</span><span class="o">=</span><span class="mf">100</span><span class="p">)</span>
-</pre></div>
-</div>
-<p>If you need paging, you can specify a number of commits to skip:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">iter_commits</span><span class="p">(</span><span class="s">&#39;master&#39;</span><span class="p">,</span> <span class="n">max_count</span><span class="o">=</span><span class="mf">10</span><span class="p">,</span> <span class="n">skip</span><span class="o">=</span><span class="mf">20</span><span class="p">)</span>
-</pre></div>
-</div>
-<p>The above will return commits 21-30 from the commit list.:</p>
-<div class="highlight-python"><pre>headcommit = repo.head.commit
-
-headcommit.hexsha
-'207c0c4418115df0d30820ab1a9acd2ea4bf4431'
-
-headcommit.parents
-(&lt;git.Commit "a91c45eee0b41bf3cdaad3418ca3850664c4a4b4"&gt;,)
-
-headcommit.tree
-&lt;git.Tree "563413aedbeda425d8d9dcbb744247d0c3e8a0ac"&gt;
-
-headcommit.author
-&lt;git.Actor "Michael Trier &lt;mtrier@gmail.com&gt;"&gt;
-
-headcommit.authored_date # seconds since epoch
-1256291446
-
-headcommit.committer
-&lt;git.Actor "Michael Trier &lt;mtrier@gmail.com&gt;"&gt;
-
-headcommit.committed_date
-1256291446
-
-headcommit.message
-'cleaned up a lot of test information. Fixed escaping so it works with
-subprocess.'</pre>
-</div>
-<p>Note: date time is represented in a <tt class="docutils literal"><span class="pre">seconds</span> <span class="pre">since</span> <span class="pre">epoch</span></tt> format. Conversion to human readable form can be accomplished with the various <a class="reference external" href="http://docs.python.org/library/time.html">time module</a> methods:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="kn">import</span> <span class="nn">time</span>
-<span class="n">time</span><span class="o">.</span><span class="n">asctime</span><span class="p">(</span><span class="n">time</span><span class="o">.</span><span class="n">gmtime</span><span class="p">(</span><span class="n">headcommit</span><span class="o">.</span><span class="n">committed_date</span><span class="p">))</span>
-<span class="s">&#39;Wed May 7 05:56:02 2008&#39;</span>
-
-<span class="n">time</span><span class="o">.</span><span class="n">strftime</span><span class="p">(</span><span class="s">&quot;%a, </span><span class="si">%d</span><span class="s"> %b %Y %H:%M&quot;</span><span class="p">,</span> <span class="n">time</span><span class="o">.</span><span class="n">gmtime</span><span class="p">(</span><span class="n">headcommit</span><span class="o">.</span><span class="n">committed_date</span><span class="p">))</span>
-<span class="s">&#39;Wed, 7 May 2008 05:56&#39;</span>
-</pre></div>
-</div>
-<p>You can traverse a commit&#8217;s ancestry by chaining calls to <tt class="docutils literal"><span class="pre">parents</span></tt>:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">headcommit</span><span class="o">.</span><span class="n">parents</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span><span class="o">.</span><span class="n">parents</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span><span class="o">.</span><span class="n">parents</span><span class="p">[</span><span class="mf">0</span><span class="p">]</span>
-</pre></div>
-</div>
-<p>The above corresponds to <tt class="docutils literal"><span class="pre">master^^^</span></tt> or <tt class="docutils literal"><span class="pre">master~3</span></tt> in git parlance.</p>
-</div>
-<div class="section" id="the-tree-object">
-<h2>The Tree object<a class="headerlink" href="#the-tree-object" title="Permalink to this headline">¶</a></h2>
-<p>A tree records pointers to the contents of a directory. Let&#8217;s say you want the root tree of the latest commit on the master branch:</p>
-<div class="highlight-python"><pre>tree = repo.heads.master.commit.tree
-&lt;git.Tree "a006b5b1a8115185a228b7514cdcd46fed90dc92"&gt;
-
-tree.hexsha
-'a006b5b1a8115185a228b7514cdcd46fed90dc92'</pre>
-</div>
-<p>Once you have a tree, you can get the contents:</p>
-<div class="highlight-python"><pre>tree.trees # trees are subdirectories
-[&lt;git.Tree "f7eb5df2e465ab621b1db3f5714850d6732cfed2"&gt;]
-
-tree.blobs # blobs are files
-[&lt;git.Blob "a871e79d59cf8488cac4af0c8f990b7a989e2b53"&gt;,
-&lt;git.Blob "3594e94c04db171e2767224db355f514b13715c5"&gt;,
-&lt;git.Blob "e79b05161e4836e5fbf197aeb52515753e8d6ab6"&gt;,
-&lt;git.Blob "94954abda49de8615a048f8d2e64b5de848e27a1"&gt;]</pre>
-</div>
-<p>Its useful to know that a tree behaves like a list with the ability to query entries by name:</p>
-<div class="highlight-python"><pre>tree[0] == tree['dir'] # access by index and by sub-path
-&lt;git.Tree "f7eb5df2e465ab621b1db3f5714850d6732cfed2"&gt;
-for entry in tree: do_something_with(entry)
-
-blob = tree[0][0]
-blob.name
-'file'
-blob.path
-'dir/file'
-blob.abspath
-'/Users/mtrier/Development/git-python/dir/file'
-&gt;&gt;&gt;tree['dir/file'].binsha == blob.binsha</pre>
-</div>
-<p>There is a convenience method that allows you to get a named sub-object from a tree with a syntax similar to how paths are written in an unix system:</p>
-<div class="highlight-python"><pre>tree/"lib"
-&lt;git.Tree "c1c7214dde86f76bc3e18806ac1f47c38b2b7a30"&gt;
-tree/"dir/file" == blob</pre>
-</div>
-<p>You can also get a tree directly from the repository if you know its name:</p>
-<div class="highlight-python"><pre>repo.tree()
-&lt;git.Tree "master"&gt;
-
-repo.tree("c1c7214dde86f76bc3e18806ac1f47c38b2b7a30")
-&lt;git.Tree "c1c7214dde86f76bc3e18806ac1f47c38b2b7a30"&gt;
-repo.tree('0.1.6')
-&lt;git.Tree "6825a94104164d9f0f5632607bebd2a32a3579e5"&gt;</pre>
-</div>
-<p>As trees only allow direct access to their direct entries, use the traverse method to obtain an iterator to traverse entries recursively:</p>
-<div class="highlight-python"><pre>tree.traverse()
-&lt;generator object at 0x7f6598bd65a8&gt;
-for entry in tree.traverse(): do_something_with(entry)</pre>
-</div>
-</div>
-<div class="section" id="the-index-object">
-<h2>The Index Object<a class="headerlink" href="#the-index-object" title="Permalink to this headline">¶</a></h2>
-<p>The git index is the stage containing changes to be written with the next commit or where merges finally have to take place. You may freely access and manipulate this information using the IndexFile Object:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">index</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">index</span>
-</pre></div>
-</div>
-<p>Access objects and add/remove entries. Commit the changes:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="k">for</span> <span class="n">stage</span><span class="p">,</span> <span class="n">blob</span> <span class="ow">in</span> <span class="n">index</span><span class="o">.</span><span class="n">iter_blobs</span><span class="p">():</span> <span class="n">do_something</span><span class="p">(</span><span class="o">...</span><span class="p">)</span>
-<span class="c"># Access blob objects</span>
-<span class="k">for</span> <span class="p">(</span><span class="n">path</span><span class="p">,</span> <span class="n">stage</span><span class="p">),</span> <span class="n">entry</span> <span class="ow">in</span> <span class="n">index</span><span class="o">.</span><span class="n">entries</span><span class="o">.</span><span class="n">iteritems</span><span class="p">:</span> <span class="k">pass</span>
-<span class="c"># Access the entries directly</span>
-<span class="n">index</span><span class="o">.</span><span class="n">add</span><span class="p">([</span><span class="s">&#39;my_new_file&#39;</span><span class="p">])</span> <span class="c"># add a new file to the index</span>
-<span class="n">index</span><span class="o">.</span><span class="n">remove</span><span class="p">([</span><span class="s">&#39;dir/existing_file&#39;</span><span class="p">])</span>
-<span class="n">new_commit</span> <span class="o">=</span> <span class="n">index</span><span class="o">.</span><span class="n">commit</span><span class="p">(</span><span class="s">&quot;my commit message&quot;</span><span class="p">)</span>
-</pre></div>
-</div>
-<p>Create new indices from other trees or as result of a merge. Write that result to a new index file:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">tmp_index</span> <span class="o">=</span> <span class="n">Index</span><span class="o">.</span><span class="n">from_tree</span><span class="p">(</span><span class="n">repo</span><span class="p">,</span> <span class="s">&#39;HEAD~1&#39;</span><span class="p">)</span> <span class="c"># load a tree into a temporary index</span>
-<span class="n">merge_index</span> <span class="o">=</span> <span class="n">Index</span><span class="o">.</span><span class="n">from_tree</span><span class="p">(</span><span class="n">repo</span><span class="p">,</span> <span class="s">&#39;base&#39;</span><span class="p">,</span> <span class="s">&#39;HEAD&#39;</span><span class="p">,</span> <span class="s">&#39;some_branch&#39;</span><span class="p">)</span> <span class="c"># merge two trees three-way</span>
-<span class="n">merge_index</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="s">&quot;merged_index&quot;</span><span class="p">)</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="handling-remotes">
-<h2>Handling Remotes<a class="headerlink" href="#handling-remotes" title="Permalink to this headline">¶</a></h2>
-<p>Remotes are used as alias for a foreign repository to ease pushing to and fetching from them:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">test_remote</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">create_remote</span><span class="p">(</span><span class="s">&#39;test&#39;</span><span class="p">,</span> <span class="s">&#39;git@server:repo.git&#39;</span><span class="p">)</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">delete_remote</span><span class="p">(</span><span class="n">test_remote</span><span class="p">)</span> <span class="c"># create and delete remotes</span>
-<span class="n">origin</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">remotes</span><span class="o">.</span><span class="n">origin</span> <span class="c"># get default remote by name</span>
-<span class="n">origin</span><span class="o">.</span><span class="n">refs</span> <span class="c"># local remote references</span>
-<span class="n">o</span> <span class="o">=</span> <span class="n">origin</span><span class="o">.</span><span class="n">rename</span><span class="p">(</span><span class="s">&#39;new_origin&#39;</span><span class="p">)</span> <span class="c"># rename remotes</span>
-<span class="n">o</span><span class="o">.</span><span class="n">fetch</span><span class="p">()</span> <span class="c"># fetch, pull and push from and to the remote</span>
-<span class="n">o</span><span class="o">.</span><span class="n">pull</span><span class="p">()</span>
-<span class="n">o</span><span class="o">.</span><span class="n">push</span><span class="p">()</span>
-</pre></div>
-</div>
-<p>You can easily access configuration information for a remote by accessing options as if they where attributes:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">o</span><span class="o">.</span><span class="n">url</span>
-<span class="s">&#39;git@server:dummy_repo.git&#39;</span>
-</pre></div>
-</div>
-<p>Change configuration for a specific remote only:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">o</span><span class="o">.</span><span class="n">config_writer</span><span class="o">.</span><span class="n">set</span><span class="p">(</span><span class="s">&quot;pushurl&quot;</span><span class="p">,</span> <span class="s">&quot;other_url&quot;</span><span class="p">)</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="obtaining-diff-information">
-<h2>Obtaining Diff Information<a class="headerlink" href="#obtaining-diff-information" title="Permalink to this headline">¶</a></h2>
-<p>Diffs can generally be obtained by subclasses of <tt class="docutils literal"><span class="pre">Diffable</span></tt> as they provide the <tt class="docutils literal"><span class="pre">diff</span></tt> method. This operation yields a DiffIndex allowing you to easily access diff information about paths.</p>
-<p>Diffs can be made between the Index and Trees, Index and the working tree, trees and trees as well as trees and the working copy. If commits are involved, their tree will be used implicitly:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">hcommit</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">head</span><span class="o">.</span><span class="n">commit</span>
-<span class="n">idiff</span> <span class="o">=</span> <span class="n">hcommit</span><span class="o">.</span><span class="n">diff</span><span class="p">()</span> <span class="c"># diff tree against index</span>
-<span class="n">tdiff</span> <span class="o">=</span> <span class="n">hcommit</span><span class="o">.</span><span class="n">diff</span><span class="p">(</span><span class="s">&#39;HEAD~1&#39;</span><span class="p">)</span> <span class="c"># diff tree against previous tree</span>
-<span class="n">wdiff</span> <span class="o">=</span> <span class="n">hcommit</span><span class="o">.</span><span class="n">diff</span><span class="p">(</span><span class="bp">None</span><span class="p">)</span> <span class="c"># diff tree against working tree</span>
-
-<span class="n">index</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">index</span>
-<span class="n">index</span><span class="o">.</span><span class="n">diff</span><span class="p">()</span> <span class="c"># diff index against itself yielding empty diff</span>
-<span class="n">index</span><span class="o">.</span><span class="n">diff</span><span class="p">(</span><span class="bp">None</span><span class="p">)</span> <span class="c"># diff index against working copy</span>
-<span class="n">index</span><span class="o">.</span><span class="n">diff</span><span class="p">(</span><span class="s">&#39;HEAD&#39;</span><span class="p">)</span> <span class="c"># diff index against current HEAD tree</span>
-</pre></div>
-</div>
-<p>The item returned is a DiffIndex which is essentially a list of Diff objects. It provides additional filtering to ease finding what you might be looking for:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="k">for</span> <span class="n">diff_added</span> <span class="ow">in</span> <span class="n">wdiff</span><span class="o">.</span><span class="n">iter_change_type</span><span class="p">(</span><span class="s">&#39;A&#39;</span><span class="p">):</span> <span class="n">do_something_with</span><span class="p">(</span><span class="n">diff_added</span><span class="p">)</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="switching-branches">
-<h2>Switching Branches<a class="headerlink" href="#switching-branches" title="Permalink to this headline">¶</a></h2>
-<p>To switch between branches, you effectively need to point your HEAD to the new branch head and reset your index and working copy to match. A simple manual way to do it is the following one:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">head</span><span class="o">.</span><span class="n">reference</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">heads</span><span class="o">.</span><span class="n">other_branch</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">head</span><span class="o">.</span><span class="n">reset</span><span class="p">(</span><span class="n">index</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span> <span class="n">working_tree</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
-</pre></div>
-</div>
-<p>The previous approach would brutally overwrite the user&#8217;s changes in the working copy and index though and is less sophisticated than a git-checkout for instance which generally prevents you from destroying your work. Use the safer approach as follows:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">repo</span><span class="o">.</span><span class="n">heads</span><span class="o">.</span><span class="n">master</span><span class="o">.</span><span class="n">checkout</span><span class="p">()</span> <span class="c"># checkout the branch using git-checkout</span>
-<span class="n">repo</span><span class="o">.</span><span class="n">heads</span><span class="o">.</span><span class="n">other_branch</span><span class="o">.</span><span class="n">checkout</span><span class="p">()</span>
-</pre></div>
-</div>
-</div>
-<div class="section" id="using-git-directly">
-<h2>Using git directly<a class="headerlink" href="#using-git-directly" title="Permalink to this headline">¶</a></h2>
-<p>In case you are missing functionality as it has not been wrapped, you may conveniently use the git command directly. It is owned by each repository instance:</p>
-<div class="highlight-python"><div class="highlight"><pre><span class="n">git</span> <span class="o">=</span> <span class="n">repo</span><span class="o">.</span><span class="n">git</span>
-<span class="n">git</span><span class="o">.</span><span class="n">checkout</span><span class="p">(</span><span class="s">&#39;head&#39;</span><span class="p">,</span> <span class="n">b</span><span class="o">=</span><span class="s">&quot;my_new_branch&quot;</span><span class="p">)</span> <span class="c"># default command</span>
-<span class="n">git</span><span class="o">.</span><span class="n">for_each_ref</span><span class="p">()</span> <span class="c"># &#39;-&#39; becomes &#39;_&#39; when calling it</span>
-</pre></div>
-</div>
-<p>The return value will by default be a string of the standard output channel produced by the command.</p>
-<p>Keyword arguments translate to short and long keyword arguments on the commandline.
-The special notion <tt class="docutils literal"><span class="pre">git.command(flag=True)</span></tt> will create a flag without value like <tt class="docutils literal"><span class="pre">command</span> <span class="pre">--flag</span></tt>.</p>
-<p>If <tt class="xref docutils literal"><span class="pre">None</span></tt> is found in the arguments, it will be dropped silently. Lists and tuples passed as arguments will be unpacked recursively to individual arguments. Objects are converted to strings using the str(...) function.</p>
-</div>
-<div class="section" id="and-even-more">
-<h2>And even more ...<a class="headerlink" href="#and-even-more" title="Permalink to this headline">¶</a></h2>
-<p>There is more functionality in there, like the ability to archive repositories, get stats and logs, blame, and probably a few other things that were not mentioned here.</p>
-<p>Check the unit tests for an in-depth introduction on how each function is supposed to be used.</p>
-</div>
-</div>
-
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
- <h3><a href="index.html">Table Of Contents</a></h3>
- <ul>
-<li><a class="reference external" href="#">GitPython Tutorial</a><ul>
-<li><a class="reference external" href="#initialize-a-repo-object">Initialize a Repo object</a></li>
-<li><a class="reference external" href="#object-databases">Object Databases</a><ul>
-<li><a class="reference external" href="#gitdb">GitDB</a></li>
-<li><a class="reference external" href="#gitcmdobjectdb">GitCmdObjectDB</a></li>
-</ul>
-</li>
-<li><a class="reference external" href="#examining-references">Examining References</a></li>
-<li><a class="reference external" href="#modifying-references">Modifying References</a></li>
-<li><a class="reference external" href="#understanding-objects">Understanding Objects</a></li>
-<li><a class="reference external" href="#the-commit-object">The Commit object</a></li>
-<li><a class="reference external" href="#the-tree-object">The Tree object</a></li>
-<li><a class="reference external" href="#the-index-object">The Index Object</a></li>
-<li><a class="reference external" href="#handling-remotes">Handling Remotes</a></li>
-<li><a class="reference external" href="#obtaining-diff-information">Obtaining Diff Information</a></li>
-<li><a class="reference external" href="#switching-branches">Switching Branches</a></li>
-<li><a class="reference external" href="#using-git-directly">Using git directly</a></li>
-<li><a class="reference external" href="#and-even-more">And even more ...</a></li>
-</ul>
-</li>
-</ul>
-
- <h4>Previous topic</h4>
- <p class="topless"><a href="whatsnew.html"
- title="previous chapter">Whats New in 0.3</a></p>
- <h4>Next topic</h4>
- <p class="topless"><a href="reference.html"
- title="next chapter">API Reference</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/tutorial.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
- <div id="searchbox" style="display: none">
- <h3>Quick search</h3>
- <form class="search" action="search.html" method="get">
- <input type="text" name="q" size="18" />
- <input type="submit" value="Go" />
- <input type="hidden" name="check_keywords" value="yes" />
- <input type="hidden" name="area" value="default" />
- </form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
- </div>
- <script type="text/javascript">$('#searchbox').show(0);</script>
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- >modules</a> |</li>
- <li class="right" >
- <a href="reference.html" title="API Reference"
- >next</a> |</li>
- <li class="right" >
- <a href="whatsnew.html" title="Whats New in 0.3"
- >previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- </body>
-</html> \ No newline at end of file
diff --git a/doc/doc_index/0.3.0/whatsnew.html b/doc/doc_index/0.3.0/whatsnew.html
deleted file mode 100644
index 65479a5b..00000000
--- a/doc/doc_index/0.3.0/whatsnew.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-
- <title>Whats New in 0.3 &mdash; GitPython v0.3.0-beta2 documentation</title>
- <link rel="stylesheet" href="_static/default.css" type="text/css" />
- <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
- <script type="text/javascript">
- var DOCUMENTATION_OPTIONS = {
- URL_ROOT: '#',
- VERSION: '0.3.0-beta2',
- COLLAPSE_MODINDEX: false,
- FILE_SUFFIX: '.html',
- HAS_SOURCE: true
- };
- </script>
- <script type="text/javascript" src="_static/jquery.js"></script>
- <script type="text/javascript" src="_static/doctools.js"></script>
- <link rel="top" title="GitPython v0.3.0-beta2 documentation" href="index.html" />
- <link rel="next" title="GitPython Tutorial" href="tutorial.html" />
- <link rel="prev" title="Overview / Install" href="intro.html" />
- </head>
- <body>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- accesskey="I">index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- accesskey="M">modules</a> |</li>
- <li class="right" >
- <a href="tutorial.html" title="GitPython Tutorial"
- accesskey="N">next</a> |</li>
- <li class="right" >
- <a href="intro.html" title="Overview / Install"
- accesskey="P">previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
-
- <div class="document">
- <div class="documentwrapper">
- <div class="bodywrapper">
- <div class="body">
-
- <div class="section" id="whats-new-in-0-3">
-<h1>Whats New in 0.3<a class="headerlink" href="#whats-new-in-0-3" title="Permalink to this headline">¶</a></h1>
-<p>GitPython 0.3 is the first step in creating a hybrid which uses a pure python implementations for all simple git features which can be implemented without significant performance penalties. Everything else is still performed using the git command, which is nicely integrated and easy to use.</p>
-<p>Its biggest strength, being the support for all git features through the git command itself, is a weakness as well considering the possibly vast amount of times the git command is being started up. Depending on the actual command being performed, the git repository will be initialized on many of these invocations, causing additional overhead for possibly tiny operations.</p>
-<p>Keeping as many major operations in the python world will result in improved caching benefits as certain data structures just have to be initialized once and can be reused multiple times. This mode of operation may improve performance when altering the git database on a low level, and is clearly beneficial on operating systems where command invocations are very slow.</p>
-<div class="section" id="object-databases">
-<h2>Object Databases<a class="headerlink" href="#object-databases" title="Permalink to this headline">¶</a></h2>
-<p>An object database provides a simple interface to query object information or to write new object data. Objects are generally identified by their 20 byte binary sha1 value during query.</p>
-<p>GitPython uses the <tt class="docutils literal"><span class="pre">gitdb</span></tt> project to provide a pure-python implementation of the git database, which includes reading and writing loose objects, reading pack files and handling alternate repositories.</p>
-<p>The great thing about this is that <tt class="docutils literal"><span class="pre">Repo</span></tt> objects can use any object database, hence it easily supports different implementations with different performance characteristics. If you are thinking in extremes, you can implement your own database representation, which may be more efficient for what you want to do specifically, like handling big files more efficiently.</p>
-</div>
-<div class="section" id="reduced-memory-footprint">
-<h2>Reduced Memory Footprint<a class="headerlink" href="#reduced-memory-footprint" title="Permalink to this headline">¶</a></h2>
-<p>Objects, such as commits, tags, trees and blobs now use 20 byte sha1 signatures internally, reducing their memory demands by 20 bytes per object, allowing you to keep more objects in memory at the same time.</p>
-<p>The internal caches of tree objects were improved to use less memory as well.</p>
-</div>
-</div>
-<div class="section" id="upgrading-from-0-2">
-<h1>Upgrading from 0.2<a class="headerlink" href="#upgrading-from-0-2" title="Permalink to this headline">¶</a></h1>
-<p>GitPython 0.2 essentially behaves like GitPython 0.3 with a Repository using the <tt class="docutils literal"><span class="pre">GitCmdObjectDB</span></tt> instead of the <tt class="docutils literal"><span class="pre">GitDB</span></tt> as object database backend. Additionally it can be used more conveniently through implicit conversions and provides a feature set strikingly similar to 0.3.</p>
-<div class="section" id="why-you-should-not-upgrade">
-<h2>Why you should not upgrade<a class="headerlink" href="#why-you-should-not-upgrade" title="Permalink to this headline">¶</a></h2>
-<p>GitPython 0.3 in most cases will not run faster than GitPython 0.2, the opposite might be the case at it uses the pure python implementation by default.
-There have been a few renames which will need additional adjustments in your code.</p>
-<p>Generally, if you only read git repositories, version 0.2 is sufficient and very well performing.</p>
-</div>
-<div class="section" id="why-you-should-upgrade">
-<h2>Why you should upgrade<a class="headerlink" href="#why-you-should-upgrade" title="Permalink to this headline">¶</a></h2>
-<p>GitPython 0.2 has reached its end of line, and it is unlikely to receive more than contributed patches. 0.3 is the main development branch which will lead into the future.</p>
-<p>GitPython 0.3 provides memory usage optimization and is very flexible in the way it uses to access the object database. With minimal effort, 0.3 will be running as fast as 0.2. It marks the first step of more versions to come, and will improve over time.</p>
-<p>GitPython 0.3 is especially suitable for everyone who needs not only read, but also write access to a git repository. It is optimized to keep the memory consumption as low as possible, especially when handling large data sets. GitPython 0.3 operates on streams, not on possibly huge chunks of data.</p>
-</div>
-<div class="section" id="guided-upgrade">
-<h2>Guided Upgrade<a class="headerlink" href="#guided-upgrade" title="Permalink to this headline">¶</a></h2>
-<p>This guide should help to make the upgrade as painless as possible, hence it points out where to start, and what to look out for.</p>
-<ul class="simple">
-<li>Have a look at the CHANGES log file and read all important changes about 0.3 for an overview.</li>
-<li>Start applying the renames, generally the <tt class="docutils literal"><span class="pre">utils</span></tt> modules are now called <tt class="docutils literal"><span class="pre">util</span></tt>, <tt class="docutils literal"><span class="pre">errors</span></tt> is called <tt class="docutils literal"><span class="pre">exc</span></tt>.</li>
-<li>Search for occurrences of the <tt class="docutils literal"><span class="pre">sha</span></tt> property of object instances. A similar value can be obtained through the new <tt class="docutils literal"><span class="pre">hexsha</span></tt> property. The native sha1 value is the <tt class="docutils literal"><span class="pre">binsha</span></tt> though.</li>
-<li>Search for code which instantiates objects directly. Their initializer now requires a 20 byte binary Sha1, rev-specs cannot be used anymore. For a similar effect, either convert your hexadecimal shas to binary shas beforehand ( <tt class="docutils literal"><span class="pre">binascii.unhexlify</span></tt> for instance ), or use higher level functions such as <tt class="docutils literal"><span class="pre">Object.new</span></tt>, <tt class="docutils literal"><span class="pre">Repo.commit</span></tt> or <tt class="docutils literal"><span class="pre">Repo.tree</span></tt>. The latter ones takes rev-specs and hexadecimal sha1 hashes.</li>
-</ul>
-</div>
-</div>
-
-
- </div>
- </div>
- </div>
- <div class="sphinxsidebar">
- <div class="sphinxsidebarwrapper">
- <h3><a href="index.html">Table Of Contents</a></h3>
- <ul>
-<li><a class="reference external" href="#">Whats New in 0.3</a><ul>
-<li><a class="reference external" href="#object-databases">Object Databases</a></li>
-<li><a class="reference external" href="#reduced-memory-footprint">Reduced Memory Footprint</a></li>
-</ul>
-</li>
-<li><a class="reference external" href="#upgrading-from-0-2">Upgrading from 0.2</a><ul>
-<li><a class="reference external" href="#why-you-should-not-upgrade">Why you should not upgrade</a></li>
-<li><a class="reference external" href="#why-you-should-upgrade">Why you should upgrade</a></li>
-<li><a class="reference external" href="#guided-upgrade">Guided Upgrade</a></li>
-</ul>
-</li>
-</ul>
-
- <h4>Previous topic</h4>
- <p class="topless"><a href="intro.html"
- title="previous chapter">Overview / Install</a></p>
- <h4>Next topic</h4>
- <p class="topless"><a href="tutorial.html"
- title="next chapter">GitPython Tutorial</a></p>
- <h3>This Page</h3>
- <ul class="this-page-menu">
- <li><a href="_sources/whatsnew.txt"
- rel="nofollow">Show Source</a></li>
- </ul>
- <div id="searchbox" style="display: none">
- <h3>Quick search</h3>
- <form class="search" action="search.html" method="get">
- <input type="text" name="q" size="18" />
- <input type="submit" value="Go" />
- <input type="hidden" name="check_keywords" value="yes" />
- <input type="hidden" name="area" value="default" />
- </form>
- <p class="searchtip" style="font-size: 90%">
- Enter search terms or a module, class or function name.
- </p>
- </div>
- <script type="text/javascript">$('#searchbox').show(0);</script>
- </div>
- </div>
- <div class="clearer"></div>
- </div>
- <div class="related">
- <h3>Navigation</h3>
- <ul>
- <li class="right" style="margin-right: 10px">
- <a href="genindex.html" title="General Index"
- >index</a></li>
- <li class="right" >
- <a href="modindex.html" title="Global Module Index"
- >modules</a> |</li>
- <li class="right" >
- <a href="tutorial.html" title="GitPython Tutorial"
- >next</a> |</li>
- <li class="right" >
- <a href="intro.html" title="Overview / Install"
- >previous</a> |</li>
- <li><a href="index.html">GitPython v0.3.0-beta2 documentation</a> &raquo;</li>
- </ul>
- </div>
- <div class="footer">
- &copy; Copyright Copyright (C) 2008, 2009 Michael Trier and contributors, 2010 Sebastian Thiel.
- Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 0.6.5.
- </div>
- </body>
-</html> \ No newline at end of file