Provided by: git-extras_5.1.0-1_all bug

NAME

       git-ignore - Add .gitignore patterns

SYNOPSIS

       git-ignore [<context>] [<pattern> [<pattern>]...]

DESCRIPTION

       Adds the given _pattern_s to a .gitignore file if it doesn´t already exist.

OPTIONS

       <context>

       -l, --local

       Sets the context to the .gitignore file in the current working directory. (default)

       -g, --global

       Sets the context to the global gitignore file for the current user.

       -p, --private

       Sets the context to the private exclude file for the repository (.git/info/exclude).

       <pattern>

       A space delimited list of patterns to append to the file in context.

   PATTERN FORMAT
       Pattern format as described in the git manual

       ○   A blank line matches no files, so it can serve as a separator for readability. To append a blank line
           use empty quotes "".

       ○   A line starting with # serves as a comment. For example, "# This is a comment"

       ○   An optional prefix ! which negates the pattern; any matching file excluded by a previous pattern will
           become  included  again.  If  a negated pattern matches, this will override lower precedence patterns
           sources. To use an exclamation ! as command line argument it is best placed between single quotes ´´.
           For example, ´!src´

       ○   If  the pattern ends with a slash, it is removed for the purpose of the following description, but it
           would only find a match with a directory. In other words, foo/ will match a directory foo  and  paths
           underneath  it, but will not match a regular file or a symbolic link foo (this is consistent with the
           way how pathspec works in general in git).

       ○   If the pattern does not contain a slash /, git treats it as a shell glob pattern  and  checks  for  a
           match against the pathname relative to the location of the .gitignore file (relative to the top level
           of the work tree if not from a .gitignore file).

       ○   Otherwise, git treats the pattern as a shell glob suitable for consumption  by  fnmatch(3)  with  the
           FNM_PATHNAME  flag:  wildcards  in  the  pattern  will  not  match  a / in the pathname. For example,
           "Documentation/*.html"  matches  "Documentation/git.html"  but  not  "Documentation/ppc/ppc.html"  or
           "tools/perf/Documentation/perf.html".

       ○   A  leading  slash matches the beginning of the pathname. For example, "/*.c" matches "cat-file.c" but
           not "mozilla-sha1/sha1.c".

EXAMPLES

       All arguments are optional so calling git-ignore alone will display  first  the  global  then  the  local
       gitignore files:

           $ git ignore
           Global gitignore: /home/alice/.gitignore
           # Numerous always-ignore extensions
           *.diff
           *.err
           *.orig
           *.rej
           *.swo
           *.swp
           *.vi
           *~
           *.sass-cache

           # OS or Editor folders
           `.DS_Store`
           `.Trashes`
           `._*`
           Thumbs.db
           ---------------------------------
           Local gitignore: .gitignore
           `.cache`
           `.project`
           `.settings`
           `.tmproj`
           nbproject

       If you only want to see the global context use the --global argument (for local use --local):

           $ git ignore
           Global gitignore: /home/alice/.gitignore
           `.DS_Store`
           `.Trashes`
           `._*`
           Thumbs.db

       To quickly append a new pattern to the default/local context simply:

           $ git ignore *.log
           Adding pattern(s) to: .gitignore
           `... adding ´*.log´`

       You  can  now  configure any patterns without ever using an editor, with a context and pattern arguments:
       The resulting configuration is also returned for your convenience.

           $ git ignore --local "" "# Temporary files" *.tmp "*.log" tmp/*  "" "# Files I´d like to keep" ´!work´  ""
           Adding pattern(s) to: .gitignore
           `... adding ´´`
           `... adding ´# Temporary files´`
           `... adding ´index.tmp´`
           `... adding ´*.log´`
           `... adding ´tmp/*´`
           `... adding ´´`
           `... adding ´# Files I´d like to keep´`
           `... adding ´!work´`
           `... adding ´´`

           Local gitignore: .gitignore

           # Temporary files
           index.tmp
           *.log

           # Files I´d like to keep
           !work

AUTHOR

       Written by Tj Holowaychuk <mailto:tj@vision-media.ca> and Tema Bolshakov <mailto:tweekane@gmail.com>  and
       Nick Lombard <mailto:github@jigsoft.co.za>

REPORTING BUGS

       <https://github.com/tj/git-extras/issues>

SEE ALSO

       <https://github.com/tj/git-extras>

                                                  December 2019                                    GIT-IGNORE(1)