A command-line tool to generate .gitignore files from predefined templates
Project description
gitignore-cli
gitignore-cli is a command-line tool that allows you to easily generate .gitignore files by selecting from pre-defined templates. It leverages the collection of .gitignore templates provided by GitHub and lets you combine multiple templates into a single file.
Features
- Generate
.gitignorefiles from predefined templates. - Combine multiple templates into a single
.gitignorefile. - List available templates.
- Autocomplete support for templates (Bash and Zsh).
- Custom header added to the generated
.gitignorefiles.
Installation
To install gitignore-cli-py, we recommend using pipx to ensure the command is globally accessible and isolated from other Python packages.
Install pipx (if not already installed)
pipx is a tool to install and run Python applications in isolated environments. First, install pipx if you haven't already:
sudo apt install pipx
Install gitignore-cli-py with pipx
Now, use pipx to install gitignore-cli-py globally:
pipx install gitignore-cli-py
This command will make the gitignore-cli command available globally in your terminal. After installing, ensure that pipx is added to your PATH by running:
pipx ensurepath
Verifying the Installation
After installation, you can verify that gitignore-cli is working by running:
gitignore-cli --help
This should display the help message for gitignore-cli.
Autocomplete setup
The CLI also supports autocompletion for templates when using Bash or Zsh. To enable autocompletion, follow these steps:
For Bash:
Run the following command to generate the autocomplete script and add the following line to your .bashrc file:
_GITIGNORE_CLI_COMPLETE=bash_source gitignore-cli > ~/.gitignore-cli-complete.sh
echo "source ~/.gitignore-cli-complete.sh" >> ~/.bashrc
source ~/.bashrc
For Zsh:
Run the following command to generate the autocomplete script and add the following line to your .zshrc file:
_GITIGNORE_CLI_COMPLETE=zsh_source gitignore-cli > ~/.gitignore-cli-complete.sh
echo "source ~/.gitignore-cli-complete.sh" >> ~/.zshrc
source ~/.zshrc
Usage
1. Generate a .gitignore file
To generate a .gitignore file with one or more templates, use the following command:
gitignore-cli generate <template1> <template2> --output <output_file>
For example, to generate a .gitignore file that includes the templates for Python and Node.js, run:
gitignore-cli generate Python Node --output .gitignore
This will create a .gitignore file combining the templates for Python and Node.js.
List available templates
To list all the available templates:
gitignore-cli list-templates
This will output a list of all templates, organized in columns for easier readability.
4. Example
# Generate a .gitignore file for Python and Node.js
gitignore-cli generate Python Node --output .gitignore
Custom Header
Each generated .gitignore file contains a custom header indicating that the file was generated by gitignore-cli along with the date and a reference to the repository. Example header:
# ======================================
# .gitignore file generated by gitignore-cli
# Generated on: 2024-10-07 01:45:23
# For more information, visit: https://github.com/ninjapythonbrasil/gitignore-cli
# ======================================
Contributing
We welcome contributions! To contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch). - Make your changes.
- Commit your changes (
git commit -m 'Add some feature'). - Push to the branch (
git push origin feature-branch). - Open a Pull Request.
Please make sure to update tests as appropriate.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contact
If you have any questions or suggestions, feel free to open an issue or reach out!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file gitignore-cli-py-0.1.3.tar.gz.
File metadata
- Download URL: gitignore-cli-py-0.1.3.tar.gz
- Upload date:
- Size: 122.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb9367c11bae4cbf231167639bacad499968012780fbbac9e56bb9fc1af17600
|
|
| MD5 |
fc54f8eae4ac807dc77923ea4d59e1c3
|
|
| BLAKE2b-256 |
71412c7b17e6118390affb2dcd45ec4d898a57253eb584bc3057175d5a48b866
|
File details
Details for the file gitignore_cli_py-0.1.3-py3-none-any.whl.
File metadata
- Download URL: gitignore_cli_py-0.1.3-py3-none-any.whl
- Upload date:
- Size: 261.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68dfc4600aec9bb0d9a29d98604158af18c3f9ad11374ab405fd108681aeff0e
|
|
| MD5 |
a12c664d4bfbed0322f137f9d667db9e
|
|
| BLAKE2b-256 |
80da38f08ab33580eb50b6be58597bfff5756e9bf664100919c0c032401d1857
|