Gitlib

Biblioteca de git de bajo nivel pythonic
Descargar ahora

Gitlib Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • BSD License
  • Precio:
  • FREE
  • Nombre del editor:
  • Andrew McNabb
  • Sitio web del editor:
  • http://www.mcnabbs.org/andrew/mrs/

Gitlib Etiquetas


Gitlib Descripción

Biblioteca de git pythonic de bajo nivel Gitlib es una biblioteca originalmente desarrollada como parte de SMUG, pero es útil como una biblioteca independiente. Proporciona una API de Pythonic para crear, acceder o modificar un repositorio de git. Las características de Many en Gitlib se implementan en Python nativo, mientras que otras requieren los comandos de plomería GIT. Una de las principales ventajas de GITLIB es que puede realizar operaciones en un repositorio desnudo que de otra manera requerirá un árbol de trabajo. Los tepositoriesgitlib pueden crear un nuevo repositorio de git, aunque rara vez es necesario: >>> PATH = TEMPFILE.MKDTEMP ()> >> Repo = gitlib.repository (ruta) >>> repo.create () git Objectsyou puede crear blobs. >>> blob = gitlib.blob () >>> blob.text = 'Esta es una prueba. '>>> blob.freeze () >>> repo.write (blob) Puede agregarlos a los árboles. >>> testfile1 =' test.txt '>>> árbol = gitlib.tree () >>> árbol. add_file (testfile1, blob.name, 'blob') Verdadero >>> árbol .freeze () >>> repo.write (árbol) que se puede agregar a commits. >>> commit = gitlib.commit () >>> commit.tree = árbol.name >>> commit.Author = 'Andrew McNabb 1219616814 -0600' >>> commit.message = '¡Primera comité! '>>> commit.freeze () >>> repo.write (commit) que se puede guardar en sucursales. >>> repo.save_head (commit.name, ninguno) cierto >>> ramificación de ramificación creó un nuevo árbol en el Repositorio, que ahora es el jefe de la rama "Master". Si queremos mirar el árbol / cometer, podemos hacerlo: >>> cabeza = repo.find_head () >>> La cabeza variable tiene una cadena que representa un número hexadecimal. Este número es el hash SHA-1 de la confirmación. Se utiliza como un identificador único. Podemos usar el ID de este compromiso de encontrar el ID del archivo que acabamos de agregar al repositorio, y podemos abrir este archivo como un objeto similar a un archivo: >>> FileID = repo.getName (TestFile1, Treename = Head) >>> blob2 = repo.getblob (fileID) >>> imprimir blob2.contents, esta es una prueba. >>> Podemos agregar un nuevo archivo al repositorio, pero hasta que creemos un árbol nuevo con una referencia a ella, Es solo un objeto colgando. >>> blob = gitlib.blob ('segundo archivo de prueba. Pruebas. ') >>> REPO.WRITE (BLOB) Indexesif Queremos cambiar un repositorio, debemos hacer nuestros cambios en un índice, y luego guardar el índice como un árbol nuevo. Caminemos por el proceso. >>> testfile2 = 'test2.txt' >>> índice = repo.readtree (cabeza) >>> index.add (testfile2, blob.name) >>> newtree = index.write () Pero ahora el nuevo árbol (cuya identificación está en Newtree), sigue siendo un objeto colgando. Todavía tenemos que hacer un compromiso. En la siguiente confirmación, especificamos el ID del árbol que estamos comprometiéndose, así como el padre se compromete a este compromiso (en este caso, justo en la cabeza), y la cadena Changelog. >>> NewCommit = repo.commit (Newtree , , 'comprometiéndose con Gitlib') ¡Todavía tenemos un objeto de compromiso colgante! El último paso para vincularlos en todos estos nuevos objetos es guardar la ID de la confirmación a la cabeza maestra ref. >>> repo.save_head (newcommit, cabeza) verdadero >>> Ahora podemos recuperar nuestro nuevo archivo, que ha sido correctamente comprometido. >>> FILEID = REPO.GETNAME (TESTFILE2) >>> REPO.GETTYPE (FILEID) 'BLOB' >>> F = repo.getBlob (FileID) >>> Imprimir F, segundo archivo de prueba. >> > Requisitos: · Python


Gitlib Software relacionado

formato

Módulo para crear diálogos / widgets de formulario PYQT4 para editar varios tipos de parámetros ...

191

Descargar

jgnucashlib

JGNUCHLIB es una biblioteca de Java para manipular el formato de archivo del software de contabilidad de GNUCASH. ...

135

Descargar