# gitlog
[](https://doi.org/10.5281/zenodo.3066256)
[](https://pypi.python.org/pypi/prtgitlog)
[](https://www.gnu.org/licenses/gpl-3.0)
[](https://anaconda.org/dvklopfenstein/prtgitlog)
A script to print **_git log_** output in a **concise** and **informative** format
## Installation
```
pip install prtgitlog
```
or
```
conda install -c dvklopfenstein prtgitlog
```
## Example Uses
Get:
1. [**Information for your weekly status report**](#1-get-information-for-your-weekly-status-report)
2. [**Information for your annual review**](#2-get-information-for-your-annual-review)
3. [**All information for one or more files**](#3-get-all-information-for-one-or-more-files)
### 1) Get information for your weekly status report
Or on Monday morning, remind yourself what you did last week.
#### The reports are split into two sections:
1. **Commit information**. Each commit is given an alias (e.g., A, B, C, D, E, ...)
2. A list of **files** that were commited, preceded by thier commit aliases
#### Example
Get commits during the last 7 days, grouped by week:
```
$ gitlog --week --after='7 days'
Week STARTING ON: 2019_05_13 Mon - 11 commits, 10 files
Fri 2019-05-17 11:41:27 1bc99eb A Added links to examples of git commands
Sat 2019-05-18 05:49:27 3430cd1 B Add FILES argument
Sat 2019-05-18 05:50:52 1943ce5 C Add STARTING ON for clarity
Sat 2019-05-18 06:33:10 9bb5654 D Implement git log follow for user-specified files
Sun 2019-05-19 04:28:45 360db18 E Allow multiple 'git log's to be run
Sun 2019-05-19 05:03:43 3703854 F Run 'git log' on multiple user-specified files
Sun 2019-05-19 05:11:29 d4106b2 G Opening README line more concise
Sun 2019-05-19 12:04:00 95a7b7b H Handle consecutive empty lines in 'git log' output
Sun 2019-05-19 12:08:54 3544c8a I Get grouping at runtime if not user-specified
Sun 2019-05-19 12:12:28 3f2bf25 J If numerous 'git log' commands used: write to a log file
Sun 2019-05-19 12:20:46 3c86b31 K Clearer, more concise doc
A..DEF.H... M src/prtgitlog/gitlog_strm.py
.B.DEF..I.K M src/prtgitlog/cli.py
..CD....I.. M src/prtgitlog/prtlog.py
...DE...... M src/prtgitlog/sortbytime.py
...D.F..IJ. M src/prtgitlog/gitlog.py
...D.F..I.. M src/tests/test_cli.py
......G...K M README.md
........I.. M src/prtgitlog/commit_info.py
........I.. M src/prtgitlog/commit_files.py
........I.. M src/bin/gitlog.py
```
### 2) Get information for your annual review
Get all commits done in the last year, grouped by month:
```
$ gitlog --month --after='365 days'
```
### 3) Get all information for one or more files
Get all commits for two files:
* src/prtgitlog/commit_aliases.py
* src/prtgitlog/commit_files.py
Notice that the log follows a file that is renamed:
* src/prtgitlog/prthdrs.py -> src/prtgitlog/commit_aliases.py
In the files section, after the commit aliases:
* M: Modified
* A: Added
* R: Removed
#### Example
```
$ gitlog src/prtgitlog/commit_aliases.py src/prtgitlog/commit_files.py
All STARTING ON: 2017_09_29 Fri - 12 commits, 3 files
Fri 2017-09-29 11:10:52 72bb16e A Put each class into its own module.
Thu 2017-10-12 11:21:36 c0dc685 B pylint. Add vim target
Thu 2017-10-12 14:13:06 2d0f281 C Now printing status for each file's commit.
Tue 2018-01-02 16:03:33 fac8edd D Limit rev chrs to printable characters
Tue 2018-01-09 14:13:43 7b44fbd E Updated Copyright date to 2018.
Thu 2018-01-18 12:02:43 b90f8c9 F cleanup. Beginning to add date-fmt headers.
Sat 2018-01-20 10:33:33 9c4b8bb G Moved commit aliases to commit_aliases filename (better desc)
Mon 2018-01-22 14:43:42 dfc1993 H SPlit commit aliases apart from commit info and commit files.
Tue 2018-01-23 15:23:53 b0b2e11 I Adjust status size to max status letters
Fri 2018-01-26 19:08:26 1563e0f J Changed Copyright to 2017-2018
Sat 2019-05-18 05:51:36 dab53ee K update copyright date
Sun 2019-05-19 12:08:54 3544c8a L Determine bytime grouping at runtime if not user-specified
ABCDEFG..... AMR src/prtgitlog/prthdrs.py
......GH.JK. RM src/prtgitlog/commit_aliases.py
.......HIJKL AM src/prtgitlog/commit_files.py
```
## Succinct Output: A Comparison
| Description | # Lines | Example Output Codeblock
|-----------------------|---------|-------------------------
| _git log_ COMMAND | 70 | [git log --after "2 days"](doc/md/README_example_succint_cmdline.md)
| _gitlog_ REPO SCRIPT | 10 | [gitlog --after="2 days"](doc/md/README_example_succint_script.md)
[webpage](https://dvklopfenstein.github.io/prtgitlog/)
Copyright (C) 2017-present, DV Klopfenstein. All rights reserved.
Raw data
{
"_id": null,
"home_page": "http://github.com/dvklopfenstein/prtgitlog",
"name": "prtgitlog",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "",
"author": "DV Klopfenstein",
"author_email": "dvklopfenstein@protonmail.com",
"download_url": "https://files.pythonhosted.org/packages/42/6b/d5cacdf56f1561b2f6a5eabec868d52bdb2fad929d7ad56e85d1de9d5283/prtgitlog-0.1.19.tar.gz",
"platform": null,
"description": "# gitlog\n[](https://doi.org/10.5281/zenodo.3066256)\n[](https://pypi.python.org/pypi/prtgitlog)\n[](https://www.gnu.org/licenses/gpl-3.0)\n[](https://anaconda.org/dvklopfenstein/prtgitlog) \nA script to print **_git log_** output in a **concise** and **informative** format\n\n## Installation\n```\npip install prtgitlog\n```\nor\n```\nconda install -c dvklopfenstein prtgitlog\n```\n## Example Uses\n\nGet: \n\n 1. [**Information for your weekly status report**](#1-get-information-for-your-weekly-status-report)\n 2. [**Information for your annual review**](#2-get-information-for-your-annual-review)\n 3. [**All information for one or more files**](#3-get-all-information-for-one-or-more-files)\n\n\n### 1) Get information for your weekly status report\nOr on Monday morning, remind yourself what you did last week.\n\n#### The reports are split into two sections:\n 1. **Commit information**. Each commit is given an alias (e.g., A, B, C, D, E, ...)\n 2. A list of **files** that were commited, preceded by thier commit aliases \n\n#### Example\nGet commits during the last 7 days, grouped by week:\n```\n$ gitlog --week --after='7 days'\n\nWeek STARTING ON: 2019_05_13 Mon - 11 commits, 10 files\n Fri 2019-05-17 11:41:27 1bc99eb A Added links to examples of git commands\n Sat 2019-05-18 05:49:27 3430cd1 B Add FILES argument\n Sat 2019-05-18 05:50:52 1943ce5 C Add STARTING ON for clarity\n Sat 2019-05-18 06:33:10 9bb5654 D Implement git log follow for user-specified files\n Sun 2019-05-19 04:28:45 360db18 E Allow multiple 'git log's to be run\n Sun 2019-05-19 05:03:43 3703854 F Run 'git log' on multiple user-specified files\n Sun 2019-05-19 05:11:29 d4106b2 G Opening README line more concise\n Sun 2019-05-19 12:04:00 95a7b7b H Handle consecutive empty lines in 'git log' output\n Sun 2019-05-19 12:08:54 3544c8a I Get grouping at runtime if not user-specified\n Sun 2019-05-19 12:12:28 3f2bf25 J If numerous 'git log' commands used: write to a log file\n Sun 2019-05-19 12:20:46 3c86b31 K Clearer, more concise doc\n A..DEF.H... M src/prtgitlog/gitlog_strm.py\n .B.DEF..I.K M src/prtgitlog/cli.py\n ..CD....I.. M src/prtgitlog/prtlog.py\n ...DE...... M src/prtgitlog/sortbytime.py\n ...D.F..IJ. M src/prtgitlog/gitlog.py\n ...D.F..I.. M src/tests/test_cli.py\n ......G...K M README.md\n ........I.. M src/prtgitlog/commit_info.py\n ........I.. M src/prtgitlog/commit_files.py\n ........I.. M src/bin/gitlog.py\n```\n\n### 2) Get information for your annual review\nGet all commits done in the last year, grouped by month:\n```\n$ gitlog --month --after='365 days'\n```\n\n### 3) Get all information for one or more files\nGet all commits for two files:\n * src/prtgitlog/commit_aliases.py\n * src/prtgitlog/commit_files.py\n\nNotice that the log follows a file that is renamed: \n * src/prtgitlog/prthdrs.py -> src/prtgitlog/commit_aliases.py\n\nIn the files section, after the commit aliases:\n * M: Modified\n * A: Added\n * R: Removed\n\n#### Example\n```\n$ gitlog src/prtgitlog/commit_aliases.py src/prtgitlog/commit_files.py\n\nAll STARTING ON: 2017_09_29 Fri - 12 commits, 3 files\n Fri 2017-09-29 11:10:52 72bb16e A Put each class into its own module.\n Thu 2017-10-12 11:21:36 c0dc685 B pylint. Add vim target\n Thu 2017-10-12 14:13:06 2d0f281 C Now printing status for each file's commit.\n Tue 2018-01-02 16:03:33 fac8edd D Limit rev chrs to printable characters\n Tue 2018-01-09 14:13:43 7b44fbd E Updated Copyright date to 2018.\n Thu 2018-01-18 12:02:43 b90f8c9 F cleanup. Beginning to add date-fmt headers.\n Sat 2018-01-20 10:33:33 9c4b8bb G Moved commit aliases to commit_aliases filename (better desc)\n Mon 2018-01-22 14:43:42 dfc1993 H SPlit commit aliases apart from commit info and commit files.\n Tue 2018-01-23 15:23:53 b0b2e11 I Adjust status size to max status letters\n Fri 2018-01-26 19:08:26 1563e0f J Changed Copyright to 2017-2018\n Sat 2019-05-18 05:51:36 dab53ee K update copyright date\n Sun 2019-05-19 12:08:54 3544c8a L Determine bytime grouping at runtime if not user-specified\n ABCDEFG..... AMR src/prtgitlog/prthdrs.py\n ......GH.JK. RM src/prtgitlog/commit_aliases.py\n .......HIJKL AM src/prtgitlog/commit_files.py\n```\n\n\n## Succinct Output: A Comparison\n\n| Description | # Lines | Example Output Codeblock\n|-----------------------|---------|-------------------------\n| _git log_ COMMAND | 70 | [git log --after \"2 days\"](doc/md/README_example_succint_cmdline.md)\n| _gitlog_ REPO SCRIPT | 10 | [gitlog --after=\"2 days\"](doc/md/README_example_succint_script.md)\n\n\n[webpage](https://dvklopfenstein.github.io/prtgitlog/)\nCopyright (C) 2017-present, DV Klopfenstein. All rights reserved.\n",
"bugtrack_url": null,
"license": "",
"summary": "A script to print 'git log' output in a concise informative format",
"version": "0.1.19",
"project_urls": {
"Homepage": "http://github.com/dvklopfenstein/prtgitlog"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "21709b762087f0e9516b0e1b5fca2ee0caf330c34e7157f770423ea977f43f97",
"md5": "1e9864a3c921d9d50570b62299d89ebb",
"sha256": "a8e05a99f4bf1d1e529250ea7283891ed6e710365cee68dab6c92aa9d7ed756b"
},
"downloads": -1,
"filename": "prtgitlog-0.1.19-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "1e9864a3c921d9d50570b62299d89ebb",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": null,
"size": 29472,
"upload_time": "2023-08-18T15:51:13",
"upload_time_iso_8601": "2023-08-18T15:51:13.569274Z",
"url": "https://files.pythonhosted.org/packages/21/70/9b762087f0e9516b0e1b5fca2ee0caf330c34e7157f770423ea977f43f97/prtgitlog-0.1.19-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "426bd5cacdf56f1561b2f6a5eabec868d52bdb2fad929d7ad56e85d1de9d5283",
"md5": "cb1561434546da93fb00f1e02fd6855a",
"sha256": "0c9a7f5d56a76af1521de622fbb380a2aa5687705492c06e1d2b8051a4690a57"
},
"downloads": -1,
"filename": "prtgitlog-0.1.19.tar.gz",
"has_sig": false,
"md5_digest": "cb1561434546da93fb00f1e02fd6855a",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 365153,
"upload_time": "2023-08-18T15:51:15",
"upload_time_iso_8601": "2023-08-18T15:51:15.579358Z",
"url": "https://files.pythonhosted.org/packages/42/6b/d5cacdf56f1561b2f6a5eabec868d52bdb2fad929d7ad56e85d1de9d5283/prtgitlog-0.1.19.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-08-18 15:51:15",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "dvklopfenstein",
"github_project": "prtgitlog",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "docopt",
"specs": []
}
],
"lcname": "prtgitlog"
}