gitig 23.4.0

Creator: bradpython12

Last updated:

Add to Cart

Description:

gitig 23.4.0

gitig
Generate .gitignore files from the command-line

gitig writes its output to stdout. Redirect the results to wherever makes sense for you, for example:
gi python > .gitignore

Installation
With cargo
gitig has an implementation in Rust (and an implementation in Python) and can be installed via cargo:
cargo install gitig-rs

With pipx
gitig is intended to be used as an end-user command-line application (i.e. not as a package's dependency). The easiest way to get started is with pipx:
pipx install gitig

With pip
gitig can also be installed via vanilla pip (or poetry, etc.):
pip install gitig

Usage
$ gi -h
usage: gi [-h] [-v] [--completion {bash,fish}] [--no-pager]
[template [template ...]]

positional arguments:
template Template(s) to include in the generated .gitignore
file. If no templates are specified, display a list of
all available templates.

optional arguments:
-h, --help show this help message and exit
-v, --version show program's version number and exit
--completion {bash,fish}
Generate a completion file for the selected shell.
--no-pager Write template list to stdout. By default, this
program attempts to paginate the list of available
templates for easier reading.

Examples


List all available gitignore templates (using a pager if one is available):
gi



Generate a gitignore file for Python and Jupyter:
gi python jupyternotebooks



Enable tab completion for Bash or Fish
gitig supports generating completion scripts for Bash and Fish. Below are commands to generate completion scripts for the various shells

For Bash, you will likely have to source (.) the generated tab completion script for it to take effect.
To enable tab completion on startup you can source the completion generated completion script in your .bashrc or .bash_profile.

Bash
gi --completion bash > /etc/bash_completion.d/gi.bash-completion

Bash (Homebrew)
gi --completion bash > $(brew --prefix)/etc/bash_completion.d/gi.bash-completion

Fish
gi --completion fish > ~/.config/fish/completions/gi.fish

Fish (Homebrew)
gi --completion fish > (brew --prefix)/share/fish/vendor_completions.d/gi.fish

API
CLI
gi # query gitignore.io and list available options

gi python jupyternotebooks # write a .gitingore file for python and jupyter to stdout

gi --completion bash # write generated bash autocompletion script to stdout
gi --completion fish # write generated fish autocompletion script to stdout

gi --version # write gitig version info to stdout

Autocompletion
gi <TAB><TAB>
1c 1c-bitrix actionscript
ada adobe advancedinstaller adventuregamestudio
agda al alteraquartusii altium
...

$ gi python j<TAB><TAB>
jabref jboss6 jekyll jetbrains+iml joe jupyternotebooks
java jboss-4-2-3-ga jenv jgiven joomla justcode
jboss jboss-6-x jetbrains jigsaw jspm
jboss4 jdeveloper jetbrains+all jmeter julia

Rust API
gitig::list_templates(); // same as `gi`
gitig::create(vec!['python', 'jupyter']); // same as `gi python jupyter`
gitig::bash_completion(); // same as `gi --completion bash`
gitig::fish_completion(); // same as `gi --completion fish`
gitig::VERSION;

Python API
import gitig

gitig.list_templates() # same as `gi`
gitig.create(['python', 'jupyter']) # same as `gi python jupyter`
gitig.bash_completion() # same as `gi --completion bash`
gitig.fish_completion() # same as `gi --completion fish`
gitig.__version__

Contributing
Rust

Fork the repo
Run cargo build
Run pre-commit install
Add your changes (adding/updating tests is always nice too)
Commit your changes + push to your fork
Open a PR

Python

Have or install a recent version of poetry (version >= 1.1)
Fork the repo
Setup a virtual environment (however you prefer)
Run poetry install
Run pre-commit install
Add your changes (adding/updating tests is always nice too)
Commit your changes + push to your fork
Open a PR

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.