{ "info": { "author": "Fabien Arcellier", "author_email": "fabien.arcellier@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6" ], "description": "## Gitanalysis\n\n[![Build Status](https://travis-ci.org/FabienArcellier/gitanalysis.svg?branch=master)](https://travis-ci.org/FabienArcellier/gitanalysis)\n\ntransform a formatted log from git as csv file\n\ngit log - `git log --all --numstat --date=short --pretty=format:'--%h--%ad--%aN' --no-renames`\n\n```\n--b092e02--2018-10-24--Fabien Arcellier\n1 1 slidesearch/indexer/application/cli/daemon.py\n\n--44ced73--2018-10-22--Fabien Arcellier\n5 1 slidesearch/indexer/lib/workers/documentscrawler.py\n\n--bb6f57d--2018-10-22--Fabien Arcellier\n3 2 slidesearch/indexer/lib/workers/documentscrawler.py\n```\n\nchangelog expose on stdout as csv file\n\n```\nshorthash,author,date,insertions,deletions,filename\nc166c30,Fabien Arcellier,2015-08-13,1,9,src/AppBundle/Controller/DefaultController.php\nc166c30,Fabien Arcellier,2015-08-13,0,5,src/AppBundle/Resources/views/default/home.html.twig\nc166c30,Fabien Arcellier,2015-08-13,1,1,src/AppBundle/Resources/views/default/slides.html.twig\n2fc1fdf,Fabien Arcellier,2015-08-01,4,0,README.md\n2fc1fdf,Fabien Arcellier,2015-08-01,7,0,app/.htaccess\n2fc1fdf,Fabien Arcellier,2015-08-01,9,0,app/AppCache.php\n2fc1fdf,Fabien Arcellier,2015-08-01,36,0,app/AppKernel.php\n2fc1fdf,Fabien Arcellier,2015-08-01,13,0,app/Resources/views/base.html.twig\n```\n\n## The latest version\n\nYou can find the latest version to ...\n\n```bash\npip install gitanalysis\n```\n\n## Usage\n\n```\nUsage: gitanalysis [OPTIONS] COMMAND [ARGS]...\n\nOptions:\n --help Show this message and exit.\n\nCommands:\n changelog export a csv changelog from git log\n effort_by_author export a csv that list the count of days spent by...\n```\n\n### Changelog\n\n```\nUsage: gitanalysis [OPTIONS] COMMAND [ARGS]...\n\nOptions:\n --help Show this message and exit.\n\nCommands:\n changelog export a csv changelog from git log\n effort_by_author export a csv that list the number of days an author has...\n```\n\nYou can run the application with the following command\n\n```bash\ngitanalysis changelog\n```\n\nor with\n\n```bash\ngitanalysis changelog < gitlog.txt\n```\n\nor with\n\n```bash\ngit log --pretty=format:'-%h;%an;%ad' --numstat | gitanalysis changelog\n```\n\n#### date_format option\n\nBy default, the exported format is compatible with Excel.\nYou may want to use your own date format.\n\nThe following example allow to export date using ISO9001 format.\n\n```\ngitanalysis changelog --date_format %Y-%m-%dT%H:%m%sZ\n```\n\n* [supported format](https://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior)\n\n### effort_by_author\n\n```\nUsage: gitanalysis effort_by_author [OPTIONS]\n\n export a csv that list the number of days an author has commit code\n\nOptions:\n --use-git force the usage of git on the current directory\n --help Show this message and exit.\n```\n\nYou can run the application with the following command\n\n```bash\ngitanalysis effort_by_author\n```\n\nor with\n\n```bash\ngitanalysis effort_by_author < gitlog.txt\n```\n\n```\nauthor,effort(days)\nFabien Arcellier,85\n...\n```\n\n## Developper guideline\n\n### Install development environment\n\nUse make to instanciate a python virtual environment in ./venv and install the\npython dependencies.\n\n```bash\nmake install_requirements_dev\n```\n\n### Activate the python environment\n\nWhen you setup the requirements, a `venv` directory on python 3 is created.\nTo activate the venv, you have to execute :\n\n```bash\nmake venv\nsource venv/bin/activate\n```\n\n### Run the linter and the unit tests\n\nBefore commit or send a pull request, you have to execute `pylint` to check the syntax\nof your code and run the unit tests to validate the behavior.\n\n```bash\nmake lint\nmake tests\n```\n\n## Contributors\n\n* Fabien Arcellier\n\n## License\n\nMIT License\n\nCopyright (c) 2018 Fabien Arcellier\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.", "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/FabienArcellier/gitanalysis", "keywords": "", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "gitanalysis", "package_url": "https://pypi.org/project/gitanalysis/", "platform": "", "project_url": "https://pypi.org/project/gitanalysis/", "project_urls": { "Homepage": "https://github.com/FabienArcellier/gitanalysis" }, "release_url": "https://pypi.org/project/gitanalysis/1.0.5/", "requires_dist": null, "requires_python": "", "summary": "", "version": "1.0.5" }, "last_serial": 4940147, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "f39308d92339ac0a72e1f21bc56b7a33", "sha256": "9942b56c2e5674523df4b328129f085f6938236ba190ac668d890aa5707ceb0b" }, "downloads": -1, "filename": "gitanalysis-1.0.0.tar.gz", "has_sig": false, "md5_digest": "f39308d92339ac0a72e1f21bc56b7a33", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5269, "upload_time": "2018-11-17T14:17:34", "url": "https://files.pythonhosted.org/packages/a9/a3/2b50511215da06c03de534b61c70c128886c9c2ff8dde234a71ac6280abe/gitanalysis-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "12a7f1ad4948fc6e885972f77465711a", "sha256": "9850f448663a17e5c5131160bda807a3206f78cbe72c95e22b0074504a6b9c71" }, "downloads": -1, "filename": "gitanalysis-1.0.1.tar.gz", "has_sig": false, "md5_digest": "12a7f1ad4948fc6e885972f77465711a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6167, "upload_time": "2018-11-17T14:29:17", "url": "https://files.pythonhosted.org/packages/d8/e0/edc811926475f132b6e810907b6e71de7b803dc12dcdece75d6d6f63a3bb/gitanalysis-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "23507544782663ebc87fb4e0ff8f0998", "sha256": "ef79919d4784dc7633f84b84c9a0eb483c825e255c169a5a237bcca88926ea6d" }, "downloads": -1, "filename": "gitanalysis-1.0.2.tar.gz", "has_sig": false, "md5_digest": "23507544782663ebc87fb4e0ff8f0998", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6119, "upload_time": "2018-11-17T14:31:28", "url": "https://files.pythonhosted.org/packages/7e/60/d7902e20ec770544cfcc2d0569762b73fe20d8832d842706b3ec680d8fed/gitanalysis-1.0.2.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "54c2f65558d75e70c1ef337611b3495d", "sha256": "12fda6cb363cc2400e6f7ea97fe1e475bcde4971bc73a7f55bf283c60b67eaf2" }, "downloads": -1, "filename": "gitanalysis-1.0.4.tar.gz", "has_sig": false, "md5_digest": "54c2f65558d75e70c1ef337611b3495d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9515, "upload_time": "2019-03-05T20:34:03", "url": "https://files.pythonhosted.org/packages/e9/54/56c7f5de0aa9e0223cb1e253c0c4a0fca5c8f83f3d4bdad6ebf6a5fa18c5/gitanalysis-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "43d4b2075040d86a3246ce4bf46d67b4", "sha256": "e772a5a0786a99a50de4d61ab19c21796e16cbf182942f004689efd9954c4b7e" }, "downloads": -1, "filename": "gitanalysis-1.0.5.tar.gz", "has_sig": false, "md5_digest": "43d4b2075040d86a3246ce4bf46d67b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9642, "upload_time": "2019-03-14T14:56:03", "url": "https://files.pythonhosted.org/packages/d9/87/8ca184d2eddd77ceeef61f66fa43714a5ddbe9971cf6593a6725a48ea317/gitanalysis-1.0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "43d4b2075040d86a3246ce4bf46d67b4", "sha256": "e772a5a0786a99a50de4d61ab19c21796e16cbf182942f004689efd9954c4b7e" }, "downloads": -1, "filename": "gitanalysis-1.0.5.tar.gz", "has_sig": false, "md5_digest": "43d4b2075040d86a3246ce4bf46d67b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9642, "upload_time": "2019-03-14T14:56:03", "url": "https://files.pythonhosted.org/packages/d9/87/8ca184d2eddd77ceeef61f66fa43714a5ddbe9971cf6593a6725a48ea317/gitanalysis-1.0.5.tar.gz" } ] }