Create auto-message-commit app.
python3 app.py <auto/manual>
Checking all files changed by git add *.If new file:
- find all functions and name + arguments + return + comment on first lines after definition
If updated file:
- if new function: name + arguments + return + comment on first lines after definition
- if updated function: check name + arguments + return + comment on first lines after definition what changed or content of function changed
- if deleted function:
If deleted file:
- name of file + names of functions
[-a | --interactive | --patch] [-s] [-v] [-u<mode>] [--amend]
[--dry-run] [(-c | -C | --squash) <commit> | --fixup [(amend|reword):]<commit>)]
[-F <file> | -m <msg>] [--reset-author] [--allow-empty]
[--allow-empty-message] [--no-verify] [-e] [--author=<author>]
[--date=<date>] [--cleanup=<mode>] [--[no-]status]
[-i | -o] [--pathspec-from-file=<file> [--pathspec-file-nul]]
[(--trailer <token>[(=|:)<value>])…] [-S[<keyid>]]
[--] [<pathspec>…]
--template=<file>
When editing the commit message, start the editor with the contents in the given file. The commit.template configuration variable is often used to give this option implicitly to the command. This mechanism can be used by projects that want to guide participants with some hints on what to write in the message in what order. If the user exits the editor without editing the message, the commit is aborted. This has no effect when a message is given by other means, e.g. with the -m or -F options.
Changes to be committed: (use "git restore --staged ..." to unstage) new file: test_file
On branch main Your branch is up to date with 'origin/main'.Changes not staged for commit: (use "git add/rm ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: README.md modified: test.txt deleted: test_file
Untracked files: (use "git add ..." to include in what will be committed) python_testing_for_status.py
no changes added to commit (use "git add" and/or "git commit -a")
On branch main Your branch is up to date with 'origin/main'.Changes to be committed: (use "git restore --staged ..." to unstage) modified: README.md new file: python_testing_for_status.py modified: test.txt
Changes not staged for commit: (use "git add/rm ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) deleted: test_file
- To chceck changes use - and + as added and deleted stuff from files, it comes from 'git diff'. - Maybe try to use openAI to summarize differences. - Create multiple versions to run script with parameters for things that git suggests.