{ "info": { "author": "Henri-Olivier Duch\u00e9", "author_email": "hoduche@yahoo.fr", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Git-graph\n\n### Learn (or teach) Git fast and well - *by visualizing the inner graph of your Git repositories*\n___\n\n![full](doc/sample_full.dot.svg)\n\n> [Git is a fast, scalable, distributed revision control system with an unusually rich command set\nthat provides both high-level operations and full access to internals.](https://git-scm.com/docs/git)\n\nAs wonderful as it may be, there is a downside coming with this \"unusually rich command set\", a kind of anxiety that affects beginners in particular and can be summed up in one question:\n>\"What the hell is going to happen to my repository if I launch this Git command ?\"\n\nA good way to overcome this difficulty is to experiment.\nThis is made easy thanks to Git lightness and the fact it is immediately up and running in any repository with `git init`.\n\nGit-graph is a Git plugin, written in Python, that displays your Git repositories inner content as a Directed Acyclic Graph (DAG).\nThis structured visual representation of Git internal data demystifies the impact of each Git command and considerably improves the learning curve.\n\n## Install\n\n#### From PyPI\nTo install Git-graph from PyPI:\n1. You first need to install [Graphviz](https://www.graphviz.org/download/) and check that the dot binary is correctly set in you system's path. \n2. Then run: \n ```\n pip install git-graph\n ```\n\n#### From GitHub\nTo install Git-graph from GitHub:\n1. You first need to install [Graphviz](https://www.graphviz.org/download/) and check that the dot binary is correctly set in you system's path. \n2. Then run:\n ```\n git clone https://github.com/hoduche/git-graph\n ```\n3. Finally, inside the newly created git-graph folder, run (with Python 3 and setuptools):\n ```\n python setup.py install\n ```\n\n## Run\n\n#### As a Git plugin\nGit-graph is a Git plugin that is run at the root of a Git repository with the command:\n```\ngit graph\n```\n\nRunning `git graph` on a Git repository will:\n1. scan you .git folder\n2. build and save a graph representation of the .git folder internals as text (.dot) and image (pdf by default) in a .gitGraph folder\n3. popup a window that displays the image of your graph\n\nA color code helps in distinguishing in the graph the different kinds of object Git is using in its implementation:\n\n| Object kind | Letter | Representation | Object kind | Letter | Representation |\n| -------------- | :----: | -------------------------------------------------- | -------------- | :----: | -------------------------------------------------- |\n| blob | b | ![blob](doc/sample_blob.dot.svg) | remote branche | r | ![remote_branch](doc/sample_remote_branch.dot.svg) |\n| tree | t | ![tree](doc/sample_tree.dot.svg) | remote head | d | ![remote_head](doc/sample_remote_head.dot.svg) |\n| commit | c | ![commit](doc/sample_commit.dot.svg) | remote server | s | ![remote_server](doc/sample_remote_server.dot.svg) |\n| local branche | l | ![local_branch](doc/sample_local_branch.dot.svg) | annotated tag | a | ![annotated_tag](doc/sample_annotated_tag.dot.svg) |\n| local head | h | ![local_head](doc/sample_local_head.dot.svg) | tag | g | ![tag](doc/sample_tag.dot.svg) |\n| upstream link | u | ![upstream](doc/sample_upstream.dot.svg) |\n\nBy default all nodes are displayed in the output graph when running `git graph`.\nIt is possible to only display a user selection of object kinds using the `-n` or `--nodes` option and picking the letters corresponding to your choice. \nFor instance to only display blob, trees and commits:\n```\ngit graph -n btc\n```\n\nBy default Git-graph considers it is launched from the root of a Git repository (ie where a .git folder can be found).\nIt is possible to indicate the path to another Git repository with the `-p` or `--path` option:\n```\ngit graph -p examples/demo\n```\n\nThe default output format is pdf.\nOther output graphics format (either vector or raster) can be set with the `-f` or `--format` option: \n(the full list of possible formats can be found on the [Graphviz documentation website](https://graphviz.gitlab.io/_pages/doc/info/output.html))\n```\ngit graph -f svg\n```\n\nFinally it is possible to prevent the graph image from poping up once constructed with the `-c` or `--conceal` option:\n```\ngit graph -c\n```\n\n#### As a Python program\n```\npython git_graph/dot_graph.py -p examples/demo -n btc -f svg\n```\nor\n```\n./git_graph/dot_graph.py -p examples/demo -n btc -f svg\n```\n \n#### As a Python module\n\n```python\nimport git_graph.dot_graph as dg\ndg.DotGraph('..').persist()\ndg.DotGraph('../examples/demo', nodes='btc').persist(form='svg', conceal=True)\n```", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/hoduche/git-graph", "keywords": "git directed acyclic graph dag graphviz dot", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "git-graph", "package_url": "https://pypi.org/project/git-graph/", "platform": "", "project_url": "https://pypi.org/project/git-graph/", "project_urls": { "Homepage": "https://github.com/hoduche/git-graph" }, "release_url": "https://pypi.org/project/git-graph/0.0.1/", "requires_dist": null, "requires_python": ">=3", "summary": "Learn Git fast and well - by visualizing the inner graph of your Git repositories", "version": "0.0.1" }, "last_serial": 4921307, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "3037d07527b19ba5cf2c22f9199297d9", "sha256": "fea5a26d95731bd9c8460829ed837252ed7e3c3de166e4aed39134438cfe303a" }, "downloads": -1, "filename": "git-graph-0.0.1.tar.gz", "has_sig": false, "md5_digest": "3037d07527b19ba5cf2c22f9199297d9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 24136, "upload_time": "2019-03-10T13:51:16", "url": "https://files.pythonhosted.org/packages/84/f0/9307a2bc06f3b5344df258c44a5769b8f14e99646c81fe9ac22d3c4f86db/git-graph-0.0.1.tar.gz" } ], "0.0.1.dev1": [ { "comment_text": "", "digests": { "md5": "17db192ebac8869a54b22273e9b075ad", "sha256": "80eea7c936af0af09b92a5767fc461b5884ac1f8937014aa8845fb6d9c6696a7" }, "downloads": -1, "filename": "git_graph-0.0.1.dev1-py3-none-any.whl", "has_sig": false, "md5_digest": "17db192ebac8869a54b22273e9b075ad", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 15608, "upload_time": "2019-01-22T22:54:43", "url": "https://files.pythonhosted.org/packages/ad/17/91392ffd8d713d571db8ef7a28399fd02c9a53824bb84d0c5d6051cd9465/git_graph-0.0.1.dev1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9d50eff61ada2d20c8ea6518855463f2", "sha256": "78b0bb0f6d31e098112912a2932ea85132cce39ed5fb8b4af69d6aa01b366e14" }, "downloads": -1, "filename": "git-graph-0.0.1.dev1.tar.gz", "has_sig": false, "md5_digest": "9d50eff61ada2d20c8ea6518855463f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26599, "upload_time": "2019-01-22T22:54:45", "url": "https://files.pythonhosted.org/packages/61/00/8adac0991163eadfe08b53787c7f53a1110ebaf46a3b998e7dd36e46d99d/git-graph-0.0.1.dev1.tar.gz" } ], "0.0.1.dev2": [ { "comment_text": "", "digests": { "md5": "ad6e02e11967db60a00deee9d98fa815", "sha256": "db430e270c283111d57a8273d79f6fb225b95b5adc6f5095e332bc0d83de604d" }, "downloads": -1, "filename": "git_graph-0.0.1.dev2-py3-none-any.whl", "has_sig": false, "md5_digest": "ad6e02e11967db60a00deee9d98fa815", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3", "size": 6665, "upload_time": "2019-01-23T00:10:26", "url": "https://files.pythonhosted.org/packages/40/91/50f31d18cc40c5738908f0c25fdb73236ed35a81ddc5d71d4609c24b5c94/git_graph-0.0.1.dev2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a57bce38b17070297f2ffa4438385fc0", "sha256": "8fdf2870fd6ef0735673d7bbafe4d4feb1419e1b1b096da4db3a284ec32fab27" }, "downloads": -1, "filename": "git-graph-0.0.1.dev2.tar.gz", "has_sig": false, "md5_digest": "a57bce38b17070297f2ffa4438385fc0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 4908, "upload_time": "2019-01-23T00:10:27", "url": "https://files.pythonhosted.org/packages/bd/c2/0031e98d96956a18b84d530e5b49eca497184152a5d0c58d7361e815e16e/git-graph-0.0.1.dev2.tar.gz" } ], "0.0.1.dev3": [ { "comment_text": "", "digests": { "md5": "8b6f1921158663ddcfca08a8ecdc2010", "sha256": "8850afae4198463642c40e823a1689910e7508dcb013d170faed7ce69c680b5a" }, "downloads": -1, "filename": "git-graph-0.0.1.dev3.tar.gz", "has_sig": false, "md5_digest": "8b6f1921158663ddcfca08a8ecdc2010", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 4946, "upload_time": "2019-01-26T10:41:35", "url": "https://files.pythonhosted.org/packages/91/13/bba18d4cdaa2a5c65cd2ff3d60e17eaded5b9ac869cee18c3a6ec8ddb069/git-graph-0.0.1.dev3.tar.gz" } ], "0.0.1.dev4": [ { "comment_text": "", "digests": { "md5": "d215c41f17b427833984bf179cd6e52b", "sha256": "7ff5698d3c6b93a95acd601dd6cb0db05194fcb7a526afc366d1daccfd2b41a6" }, "downloads": -1, "filename": "git-graph-0.0.1.dev4.tar.gz", "has_sig": false, "md5_digest": "d215c41f17b427833984bf179cd6e52b", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 5641, "upload_time": "2019-01-26T22:11:26", "url": "https://files.pythonhosted.org/packages/d7/54/334a46de22d54ffd2e0db08fceb13003386b4a47ea251d1f1e8e0db50c0c/git-graph-0.0.1.dev4.tar.gz" } ], "0.0.1.dev5": [ { "comment_text": "", "digests": { "md5": "0a33e0f0c7bbe52bb63049d385d27072", "sha256": "fed2bccb2c63a2fc77c175aa1fa0342ee57eb5989b6fc1700e238b1a3fe21a67" }, "downloads": -1, "filename": "git-graph-0.0.1.dev5.tar.gz", "has_sig": false, "md5_digest": "0a33e0f0c7bbe52bb63049d385d27072", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 7374, "upload_time": "2019-02-03T22:32:51", "url": "https://files.pythonhosted.org/packages/4b/77/2952fe4663572d661083d240e85cb1b1170c901a4d910ddbf853e3d3a670/git-graph-0.0.1.dev5.tar.gz" } ], "0.0.1.dev6": [ { "comment_text": "", "digests": { "md5": "45250ca1a704187a43612991eb197106", "sha256": "dc1d13e528530b86c640d1450947eaac5abebe5b845fbaa36696857446ca99ae" }, "downloads": -1, "filename": "git-graph-0.0.1.dev6.tar.gz", "has_sig": false, "md5_digest": "45250ca1a704187a43612991eb197106", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 20995, "upload_time": "2019-02-03T22:48:21", "url": "https://files.pythonhosted.org/packages/dd/6f/436fc812675fdec40c64e88ed7cdb417d9673b4637a4749633e313fa90a8/git-graph-0.0.1.dev6.tar.gz" } ], "0.0.1.dev7": [ { "comment_text": "", "digests": { "md5": "85cc44a788dd14bb3d6b9230b920e644", "sha256": "b00bbed891601fa0ff4e3499c3054a2292cf8819c969870aa1a332e766d8df09" }, "downloads": -1, "filename": "git-graph-0.0.1.dev7.tar.gz", "has_sig": false, "md5_digest": "85cc44a788dd14bb3d6b9230b920e644", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 12339, "upload_time": "2019-02-05T16:44:24", "url": "https://files.pythonhosted.org/packages/77/55/9a09e3571a2fde13fc6c7b99b416f900f5826e11602c6029beb462c6c6d4/git-graph-0.0.1.dev7.tar.gz" } ], "0.0.1.dev8": [ { "comment_text": "", "digests": { "md5": "1da29514273e6c3944877aa359d4cc5a", "sha256": "4e22bf249dec1028c5cbf5d813c545e56f6d765e2b12075a6ad8e815b1ef1d10" }, "downloads": -1, "filename": "git-graph-0.0.1.dev8.tar.gz", "has_sig": false, "md5_digest": "1da29514273e6c3944877aa359d4cc5a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 20945, "upload_time": "2019-02-17T19:32:11", "url": "https://files.pythonhosted.org/packages/49/b7/4e7d2cbaaebda66cb7c707c2e85f48526f717334e3c635199084960d568d/git-graph-0.0.1.dev8.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "3037d07527b19ba5cf2c22f9199297d9", "sha256": "fea5a26d95731bd9c8460829ed837252ed7e3c3de166e4aed39134438cfe303a" }, "downloads": -1, "filename": "git-graph-0.0.1.tar.gz", "has_sig": false, "md5_digest": "3037d07527b19ba5cf2c22f9199297d9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3", "size": 24136, "upload_time": "2019-03-10T13:51:16", "url": "https://files.pythonhosted.org/packages/84/f0/9307a2bc06f3b5344df258c44a5769b8f14e99646c81fe9ac22d3c4f86db/git-graph-0.0.1.tar.gz" } ] }