deb-python-pygit2/README.rst
J. David Ibáñez 873b38bbc3 Update README
2014-02-03 22:39:58 +01:00

9.2 KiB

pygit2 - libgit2 bindings in Python

image

Pygit2 is a set of Python bindings to the libgit2 shared library, libgit2 implements the core of Git. Pygit2 works with Python 2.6, 2.7, 3.1, 3.2 and 3.3

Pygit2 links:

Quick install guide

  1. Checkout the libgit2 stable branch:

    $ git clone git://github.com/libgit2/libgit2.git -b master
  2. Build and install libgit2 https://github.com/libgit2/libgit2/#building-libgit2---using-cmake

  3. Install pygit2 with pip:

    $ pip install pygit2

For detailed instructions check the documentation, http://www.pygit2.org/install.html

Contributing

Fork libgit2/pygit2 on GitHub, make it awesomer (preferably in a branch named for the topic), send a pull request.

Authors

56 developers have contributed at least 1 commit to pygit2:

J. David Ibáñez                          Andrey Devyatkin
Nico von Geyso                           Ben Davis
Carlos Martín Nieto                      Eric Schrijver
W. Trevor King                           Hervé Cauwelier
Dave Borowitz                            Huang Huang
Daniel Rodríguez Troitiño                Jared Flatow
Richo Healey                             Jiunn Haur Lim
Christian Boos                           Sarath Lakshman
Julien Miotte                            Vicent Marti
Jose Plana                               Zoran Zaric
Martin Lenders                           Adam Spiers
Victor Garcia                            Andrew Chin
Xavier Delannoy                          András Veres-Szentkirályi
Yonggang Luo                             Benjamin Kircher
Petr Hosek                               Benjamin Pollack
Valentin Haenel                          Bryan O'Sullivan
Xu Tao                                   David Fischer
Bernardo Heynemann                       David Sanders
John Szakmeister                         Eric Davis
Brodie Rao                               Erik van Zijst
David Versmisse                          Ferengee
Rémi Duraffort                           Gustavo Di Pietro
Sebastian Thiel                          Hugh Cole-Baker
Fraser Tweedale                          Josh Bleecher Snyder
Han-Wen Nienhuys                         Jun Omae
Petr Viktorin                            Óscar San José
Alex Chamberlain                         Ridge Kennedy
Amit Bakshi                              Rui Abreu Ferreira

Changelog

0.20.2 (2014-02-XX)

  • Support pypy #209 #327 #333
  • New Blob.diff(...) and Blob.diff_to_buffer(...) #307
  • New Repository.default_signature #310
  • New Commit.tree_id and Commit.parent_ids #73 #311
  • New Config iterator replaces Config.foreach #183 #312
  • New rich comparison between tree entries #305 #313
  • New type Refspec #314
  • New Remote.push_url #315
  • Now path in Tree works #306 #316
  • New Remote.add_push and Remote.add_fetch #255 #318
  • New Remote.fetch_refspecs replaces Remote.get_fetch_refspecs() and Remote.set_fetch_refspecs(...) #319
  • New Remote.push_refspecs replaces Remote.get_push_refspecs() and Remote.set_push_refspecs(...) #319
  • New str(Oid) deprecates Oid.hex #322
  • New Object.id deprecates Object.oid #322
  • New TreeEntry.id deprecates TreeEntry.oid #322
  • New Remote.progress, Remote.transfer_progress and Remote.update_tips #274 #324
  • New type TransferProgress #274 #324
  • Now possible to create IndexEntry(...) #325
  • Now IndexEntry.path, IndexEntry.oid and IndexEntry.mode are writable #325
  • Now Index.add(...) accepts an IndexEntry too #325
  • Now Index.write_tree(...) is able to write to a different repository #325
  • Fix refcount leak in Repository.remotes #321 #332
  • Other non user visible changes: #331

0.20.1 (2013-12-24)

  • New remote ref-specs API: #290
  • New Repository.reset(...): #292, #294
  • Export GIT_DIFF_MINIMAL: #293
  • New Repository.merge(...): #295
  • Fix Repository.blame argument handling: #297
  • Fix build error on Windows: #298
  • Fix typo in the README file, Blog → Blob: #301
  • Now Diff.patch returns None if no patch: #232, #303
  • New Walker.simplify_first_parent(): #304

0.20.0 (2013-11-24)

  • Upgrade to libgit2 v0.20.0: #288
  • New Repository.head_is_unborn replaces Repository.head_is_orphaned
  • Changed pygit2.clone_repository(...). Drop push_url, fetch_spec and push_spec parameters. Add ignore_cert_errors.
  • New Patch.additions and Patch.deletions: #275
  • New Patch.is_binary: #276
  • New Reference.log_append(...): #277
  • New Blob.is_binary: #278
  • New len(Diff) shows the number of patches: #281
  • Rewrite Repository.status(): #283
  • New Reference.shorthand: #284
  • New Repository.blame(...): #285
  • Now Repository.listall_references() and Repository.listall_branches() return a list, not a tuple: #289

License

GPLv2 with linking exception.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License, version 2, as published by the Free Software Foundation.

In addition to the permissions in the GNU General Public License, the authors give you unlimited permission to link the compiled version of this file into combinations with other programs, and to distribute those combinations without any restriction coming from the use of this file. (The General Public License restrictions do apply in other respects; for example, they cover modification of the file, and distribution when not linked into a combined executable.)

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.