e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 1 1 83 author Sebastian Thiel author-mail author-time 1420715996 author-tz +0100 committer Sebastian Thiel committer-mail committer-time 1420716149 committer-tz +0100 summary Fixed PY3 support. boundary filename README.md ## GitPython e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 2 2 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 3 3 GitPython is a python library used to interact with git repositories, high-level like git-porcelain, or low-level like git-plumbing. e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 4 4 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 5 5 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. e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 6 6 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 7 7 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. e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 8 8 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 9 9 ### REQUIREMENTS e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 10 10 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 11 11 * Git ( tested with 1.8.3.4 ) e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 12 12 * Python Nose - used for running the tests e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 13 13 - Tested with nose 1.3.0 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 14 14 * Mock by Michael Foord used for tests e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 15 15 - Tested with 1.0.1 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 16 16 * Coverage - used for tests coverage e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 17 17 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 18 18 The list of dependencies are listed in /requirements.txt and /test-requirements.txt. The installer takes care of installing them for you though. e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 19 19 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 20 20 ### INSTALL e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 21 21 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 22 22 [![Latest Version](https://pypip.in/version/GitPython/badge.svg)](https://pypi.python.org/pypi/GitPython/) e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 23 23 [![Supported Python Versions](https://pypip.in/py_versions/GitPython/badge.svg)](https://pypi.python.org/pypi/GitPython/) e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 24 24 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 25 25 If you have downloaded the source code: e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 26 26 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 27 27 python setup.py install e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 28 28 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 29 29 or if you want to obtain a copy from the Pypi repository: e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 30 30 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 31 31 pip install gitpython e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 32 32 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 33 33 Both commands will install the required package dependencies. e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 34 34 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 35 35 A distribution package can be obtained for manual installation at: e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 36 36 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 37 37 http://pypi.python.org/pypi/GitPython e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 38 38 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 39 39 ### RUNNING TESTS e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 40 40 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 41 41 The easiest way to run test is by using [tox](https://pypi.python.org/pypi/tox) a wrapper around virtualenv. It will take care of setting up environnements with the proper dependencies installed and execute test commands. To install it simply: e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 42 42 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 43 43 pip install tox e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 44 44 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 45 45 Then run: e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 46 46 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 47 47 tox e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 48 48 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 49 49 ### SOURCE e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 50 50 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 51 51 GitPython's git repo is available on GitHub, which can be browsed at [github](https://github.com/gitpython-developers/GitPython) and cloned like that: e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 52 52 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 53 53 git clone git://github.com/gitpython-developers/GitPython.git git-python e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 54 54 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 55 55 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 56 56 ### INFRASTRUCTURE e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 57 57 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 58 58 * [User Documentation](http://gitpython.readthedocs.org) e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 59 59 * [Mailing List](http://groups.google.com/group/git-python) e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 60 60 * [Issue Tracker](https://github.com/gitpython-developers/GitPython/issues) e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 61 61 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 62 62 ### LICENSE e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 63 63 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 64 64 New BSD License. See the LICENSE file. e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 65 65 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 66 66 ### DEVELOPMENT STATUS e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 67 67 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 68 68 [![Build Status](https://travis-ci.org/gitpython-developers/GitPython.svg?branch=0.3)](https://travis-ci.org/gitpython-developers/GitPython) e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 69 69 [![Coverage Status](https://coveralls.io/repos/gitpython-developers/GitPython/badge.png?branch=master)](https://coveralls.io/r/gitpython-developers/GitPython?branch=master) e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 70 70 [![Documentation Status](https://readthedocs.org/projects/gitpython/badge/?version=stable)](https://readthedocs.org/projects/gitpython/?badge=stable) e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 71 71 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 72 72 Now that there seems to be a massive user base, this should be motivation enough to let git-python return to a proper state, which means e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 73 73 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 74 74 * no open pull requests e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 75 75 * no open issues describing bugs e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 76 76 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 77 77 #### FUTURE GOALS e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 78 78 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 79 79 There has been a lot of work in the master branch, which is the direction I want git-python to go. Namely, it should be able to freely mix and match the back-end used, depending on your requirements and environment. e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 80 80 e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 81 81 * make new master work similarly to 0.3, but with the option to swap for at least one additional backend e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 82 82 * make a 1.0 release e40ad6369bc74d01af4dc41d3a9b8e25ac2aa01e 83 83 * add backends as required