Skip to main content

A command-line tool to generate .gitignore files from predefined templates

Project description

gitignore-cli

PyPI - Version

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 .gitignore files from predefined templates.
  • Combine multiple templates into a single .gitignore file.
  • List available templates.
  • Autocomplete support for templates (Bash and Zsh).
  • Custom header added to the generated .gitignore files.

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:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add some feature').
  5. Push to the branch (git push origin feature-branch).
  6. 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

gitignore-cli-py-0.1.2.tar.gz (122.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gitignore_cli_py-0.1.2-py3-none-any.whl (261.3 kB view details)

Uploaded Python 3

File details

Details for the file gitignore-cli-py-0.1.2.tar.gz.

File metadata

  • Download URL: gitignore-cli-py-0.1.2.tar.gz
  • Upload date:
  • Size: 122.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.2

File hashes

Hashes for gitignore-cli-py-0.1.2.tar.gz
Algorithm Hash digest
SHA256 b33e0854fdc011737a297641644d4583980035a7b5659db95f6c5661fa88ab40
MD5 0d8e0feacae5312bda42860dbc535330
BLAKE2b-256 c83c921b1d2c684a9d208ef432704b69a645e915bfb9436016f494e9f87fa4ef

See more details on using hashes here.

File details

Details for the file gitignore_cli_py-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for gitignore_cli_py-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2ef91182e6da3f383a775130a17ac39f885e1d0c7e443788c43150011c1e4786
MD5 e2ad7ee6cb3110eb809310a027d644ce
BLAKE2b-256 129084d51380c82f997e62da68b5480c430f18d23256a18461d808f1aa84cfc1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page