A collection of useful Git plugins to enhance your Git workflow. These plugins help automate common tasks and maintain a consistent development environment.
Features • Installation • Usage • Contributing • License
- git-autocommit: Create standardized commit messages automatically
- git-branch-cleanup: Clean up merged branches efficiently
- git-get: Organize repositories in a standardized structure (Go-style)
# Add the tap
brew tap rfussien/git-plugins https://github.com/rfussien/git-plugins
# Install individual plugins
brew install rfussien/git-plugins/git-autocommit
brew install rfussien/git-plugins/git-branch-cleanup
brew install rfussien/git-plugins/git-get
# Replace [plugin-name] with: git-autocommit, git-branch-cleanup, or git-get
curl -L https://raw.githubusercontent.com/rfussien/git-plugins/main/[plugin-name] -o /usr/local/bin/[plugin-name]
chmod +x /usr/local/bin/[plugin-name]
Automatically create standardized commit messages based on your branch name.
git autocommit [COMMIT_TYPE]
# Examples
git autocommit # Creates "feat: #branch name"
git autocommit fix # Creates "fix: #branch name"
git autocommit docs # Creates "docs: #branch name"
Keep your repository tidy by cleaning up merged branches.
git branch-cleanup
# Safe by default - won't delete protected branches:
# - master
# - main
# - develop
# - dev
Clone and organize repositories in a standardized directory structure.
git get [OPTIONS] <repository>
# Examples
git get [email protected]:user/repo.git
git get https://github.com/user/repo
git get user/repo
git get --path /custom/path user/repo
GIT_GET_PATH=/custom/path git get user/repo
# Options
-p, --path # Specify custom base path
The base path can be configured in three ways (in order of precedence):
- Command line argument:
--path /custom/path
- Environment variable:
GIT_GET_PATH=/custom/path
- Default:
~/src
All plugins support these standard options:
-h, --help # Show help message
--version # Show version information
When using git-get
, repositories are organized following this structure:
[base_path]/
├── github.com/
│ ├── username/
│ │ └── project/
│ └── organization/
│ └── project/
└── gitlab.com/
└── username/
└── project/
Where base_path
is determined by (in order of precedence):
- The
--path
command line option - The
GIT_GET_PATH
environment variable - Default value of
~/src
Contributions are welcome! Here's how you can help:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'feat: add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
See CONTRIBUTING.md for detailed guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
See CHANGELOG.md for a list of changes and versions.
If you find these plugins useful, please consider giving the repository a star!