Skip to content

Instantly share code, notes, and snippets.

@Artnoc1
Last active September 20, 2022 11:18
Show Gist options
  • Select an option

  • Save Artnoc1/a0e53640ef9a31dd9e9e5390fe18b49e to your computer and use it in GitHub Desktop.

Select an option

Save Artnoc1/a0e53640ef9a31dd9e9e5390fe18b49e to your computer and use it in GitHub Desktop.

Revisions

  1. Artnoc1 revised this gist Sep 20, 2022. 1 changed file with 234 additions and 624 deletions.
    858 changes: 234 additions & 624 deletions GITCOMMANDS.md
    Original file line number Diff line number Diff line change
    @@ -1,632 +1,242 @@
    ```
    ### git help
    ### git help

    ---
    ### usage:
    ---
    `git [--version] [--help] [-C <path>] [-c <name>=<value>] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path] [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare] [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>] <command> [<args>]`
    ---
    ### These are common Git commands used in various situations:
    ---
    #### start a working area (see also: git help tutorial)
    `clone` Clone a repository into a new directory
    `init` Create an empty Git repository or reinitialize an existing one
    ---
    #### work on the current change (see also: git help everyday)
    add
    Add file contents to the index
    mv
    Move or rename a file, a directory, or a symlink
    restore
    Restore working tree files
    rm
    Remove files from the working tree and from the index
    sparse-checkout
    Initialize and modify the sparse-checkout
    ---
    #### examine the history and state (see also: git help revisions)
    bisect
    Use binary search to find the commit that introduced a bug
    diff
    Show changes between commits, commit and working tree, etc
    grep
    Print lines matching a pattern
    log
    Show commit logs
    show
    Show various types of objects
    status
    Show the working tree status
    ---
    #### grow, mark and tweak your common history
    branch
    List, create, or delete branches
    commit
    Record changes to the repository
    merge
    Join two or more development histories together
    rebase
    Reapply commits on top of another base tip
    reset
    Reset current HEAD to the specified state
    switch
    Switch branches
    tag
    Create, list, delete or verify a tag object signed with GPG
    ---
    #### collaborate (see also: git help workflows)
    fetch
    Download objects and refs from another repository
    pull
    Fetch from and integrate with another repository or a local branch
    push
    Update remote refs along with associated objects
    'git help -a' and
    'git help -g'
    list available subcommands and some concept guides.
    See
    'git help <command>' or
    'git help <concept>'
    to read about a specific subcommand or concept.
    See
    'git help git'
    for an overview of the system.
    ### usage:

    ---
    `git [--version] [--help] [-C <path>] [-c <name>=<value>] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path] [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare] [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>] <command> [<args>]`
    ---
    ### These are common Git commands used in various situations:

    ---
    #### start a working area (see also: `git help tutorial`)
    `clone` Clone a repository into a new directory
    `init` Create an empty Git repository or reinitialize an existing one

    ---
    #### work on the current change (see also: git help everyday)
    `add` | Add file contents to the index
    `mv` | Move or rename a file, a directory, or a symlink
    `restore` | Restore working tree files
    `rm` | Remove files from the working tree and from the index
    `sparse-checkout` | Initialize and modify the sparse-checkout

    ---
    #### examine the history and state (see also: git help revisions)
    `bisect` | Use binary search to find the commit that introduced a bug
    `diff` | Show changes between commits, commit and working tree, etc
    `grep` | Print lines matching a pattern
    `log` | Show commit logs
    `show` | Show various types of objects
    `status` | Show the working tree status

    ---
    #### grow, mark and tweak your common history
    `branch` | List, create, or delete branches
    `commit` | Record changes to the repository
    `merge` | Join two or more development histories together
    `rebase` | Reapply commits on top of another base tip
    `reset` | Reset current HEAD to the specified state
    `switch` | Switch branches
    `tag` | Create, list, delete or verify a tag object signed with GPG

    ---
    #### collaborate (see also: git help workflows)
    `fetch` | Download objects and refs from another
    `pull` | Fetch from and integrate with another repository or a local
    `push` | Update remote refs along with associated objects
    `git help -a` and `git help -g` | list available subcommands and some concept guides.
    `git help <command>` or `git help <concept>` | to read about a specific subcommand or concept.
    `git help git` | for an overview of the system.

    ---
    ## The common Git guides are:
    ## The common Git guides are:

    ---
    attributes
    Defining attributes per path
    cli
    Git command-line interface and conventions
    core-tutorial
    A Git core tutorial for developers
    cvs-migration
    Git for CVS users
    diffcore
    Tweaking diff output
    everyday
    A useful minimum set of commands for Everyday Git
    faq
    Frequently asked questions about using Git
    glossary
    A Git Glossary
    hooks
    Hooks used by Git
    ignore
    Specifies intentionally untracked files to ignore
    modules
    Defining submodule properties
    namespaces
    Git namespaces
    repository-layout
    Git Repository Layout
    revisions
    Specifying revisions and ranges for Git
    submodules
    Mounting one repository inside another
    tutorial
    A tutorial introduction to Git
    tutorial-2
    A tutorial introduction to Git: part two
    workflows
    An overview of recommended workflows with Git
    `attributes` | Defining attributes per path
    `cli` | Git command-line interface and conventions
    `core-tutorial` | A Git core tutorial for developers
    `cvs-migration` | Git for CVS users
    `diffcore` | Tweaking diff output
    `everyday` | A useful minimum set of commands for Everyday Git
    `faq` | Frequently asked questions about using Git
    `glossary` | A Git Glossary
    `hooks` | Hooks used by Git
    `ignore` | Specifies intentionally untracked files to ignore
    `modules` | Defining submodule properties
    `namespaces` | Git namespaces
    `repository-layout` | Git Repository Layout
    `revisions` | Specifying revisions and ranges for Git
    `submodules` | Mounting one repository inside another
    `tutorial` | A tutorial introduction to Git
    `tutorial-2` | A tutorial introduction to Git: part two
    `workflows` | An overview of recommended workflows with Git

    ---
    `git help -a` and
    `git help -g`
    list available subcommands and some concept guides.
    See
    `git help <command>` or
    `git help <concept>`
    to read about a specific subcommand or concept.
    See
    `git help git`
    for an overview of the system.
    See
    'git help <command>'
    to read about a specific subcommand
    ```

    ```
    Main Porcelain Commands
    add
    Add file contents to the index
    am
    Apply a series of patches from a mailbox
    archive
    Create an archive of files from a named tree
    bisect
    Use binary search to find the commit that introduced a bug
    branch
    List, create, or delete branches
    bundle
    Move objects and refs by archive
    checkout
    Switch branches or restore working tree files
    cherry-pick
    Apply the changes introduced by some existing commits
    citool
    Graphical alternative to git-commit
    clean
    Remove untracked files from the working tree
    clone
    Clone a repository into a new directory
    commit
    Record changes to the repository
    describe
    Give an object a human readable name based on an available ref
    diff
    Show changes between commits, commit and working tree, etc
    fetch
    Download objects and refs from another repository
    format-patch
    Prepare patches for e-mail submission
    gc
    Cleanup unnecessary files and optimize the local repository
    gitk
    The Git repository browser
    grep
    Print lines matching a pattern
    gui
    A portable graphical interface to Git
    init
    Create an empty Git repository or reinitialize an existing one
    log
    Show commit logs
    merge
    Join two or more development histories together
    mv
    Move or rename a file, a directory, or a symlink
    notes
    Add or inspect object notes
    pull
    Fetch from and integrate with another repository or a local branch
    push
    Update remote refs along with associated objects
    range-diff
    Compare two commit ranges (e.g. two versions of a branch)
    rebase
    Reapply commits on top of another base tip
    reset
    Reset current HEAD to the specified state
    restore
    Restore working tree files
    revert
    Revert some existing commits
    rm
    Remove files from the working tree and from the index
    shortlog
    Summarize 'git log' output
    show
    Show various types of objects
    sparse-checkout
    Initialize and modify the sparse-checkout
    stash
    Stash the changes in a dirty working directory away
    status
    Show the working tree status
    submodule
    Initialize, update or inspect submodules
    switch
    Switch branches
    tag
    Create, list, delete or verify a tag object signed with GPG
    worktree
    Manage multiple working trees
    ```

    ```
    Ancillary Commands / Manipulators
    config
    Get and set repository or global options
    fast-export
    Git data exporter
    fast-import
    Backend for fast Git data importers
    filter-branch
    Rewrite branches
    mergetool
    Run merge conflict resolution tools to resolve merge conflicts
    pack-refs
    Pack heads and tags for efficient repository access
    prune
    Prune all unreachable objects from the object database
    reflog
    Manage reflog information
    remote
    Manage set of tracked repositories
    repack
    Pack unpacked objects in a repository
    replace
    Create, list, delete refs to replace objects
    ```

    ```
    Ancillary Commands / Interrogators
    annotate
    Annotate file lines with commit information
    blame
    Show what revision and author last modified each line of a file
    bugreport
    Collect information for user to file a bug report
    count-objects
    Count unpacked number of objects and their disk consumption
    difftool
    Show changes using common diff tools
    fsck
    Verifies the connectivity and validity of the objects in the database
    gitweb
    Git web interface (web frontend to Git repositories)
    help
    Display help information about Git
    instaweb
    Instantly browse your working repository in gitweb
    merge-tree
    Show three-way merge without touching index
    rerere
    Reuse recorded resolution of conflicted merges
    show-branch
    Show branches and their commits
    verify-commitCheck the GPG signature of commits
    verify-tag
    Check the GPG signature of tags
    whatchanged
    Show logs with difference each commit introduces
    ```

    ```
    Interacting with Others
    archimport
    Import a GNU Arch repository into Git
    cvsexportcommit
    Export a single commit to a CVS checkout
    cvsimport
    Salvage your data out of another SCM people love to hate
    cvsserver
    A CVS server emulator for Git
    imap-send
    Send a collection of patches from stdin to an IMAP folder
    p4
    Import from and submit to Perforce repositories
    quiltimport
    Applies a quilt patchset onto the current branch
    request-pull
    Generates a summary of pending changes
    send-email
    Send a collection of patches as emails
    svn
    Bidirectional operation between a Subversion repository and Git
    ```

    ```
    Low-level Commands / Manipulators
    apply
    Apply a patch to files and/or to the index
    checkout-index
    Copy files from the index to the working tree
    commit-graph
    Write and verify Git commit-graph files
    commit-tree
    Create a new commit object
    hash-object
    Compute object ID and optionally creates a blob from a file
    index-pack
    Build pack index file for an existing packed archive
    merge-file
    Run a three-way file merge
    merge-index
    Run a merge for files needing merging
    mktag
    Creates a tag object
    mktree
    Build a tree-object from ls-tree formatted text
    multi-pack-index
    Write and verify multi-pack-indexes
    pack-objects
    Create a packed archive of objects
    prune-packed
    Remove extra objects that are already in pack files
    read-tree
    Reads tree information into the index
    symbolic-ref
    Read, modify and delete symbolic refs
    unpack-objects
    Unpack objects from a packed archive
    update-index
    Register file contents in the working tree to the index
    update-ref
    Update the object name stored in a ref safely
    write-tree
    Create a tree object from the current index
    ```

    ```
    Low-level Commands / Interrogators
    cat-file
    Provide content or type and size information for repository objects
    cherry
    Find commits yet to be applied to upstream
    diff-files
    Compares files in the working tree and the index
    diff-index
    Compare a tree to the working tree or index
    diff-tree
    Compares the content and mode of blobs found via two tree objects
    for-each-ref
    Output information on each ref
    get-tar-commit-id
    Extract commit ID from an archive created using git-archive
    ls-files
    Show information about files in the index and the working tree
    ls-remote
    List references in a remote repository
    ls-tree
    List the contents of a tree object
    merge-base
    Find as good common ancestors as possible for a merge
    name-rev
    Find symbolic names for given revs
    pack-redundant
    Find redundant pack files
    rev-list
    Lists commit objects in reverse chronological order
    rev-parse
    Pick out and massage parameters
    show-index
    Show packed archive index
    show-ref
    List references in a local repository
    unpack-file
    Creates a temporary file with a blob's contents
    var
    Show a Git logical variable
    verify-pack
    Validate packed Git archive files
    ```

    ```
    Low-level Commands / Syncing Repositories
    daemon
    A really simple server for Git repositories
    fetch-pack
    Receive missing objects from another repository
    http-backend
    Server side implementation of Git over HTTP
    send-pack
    Push objects over Git protocol to another repository
    update-server-info
    Update auxiliary info file to help dumb servers
    ```

    ```
    Low-level Commands / Internal Helpers
    check-attr
    Display gitattributes information
    check-ignore
    Debug gitignore / exclude files
    check-mailmap
    Show canonical names and email addresses of contacts
    check-ref-format
    Ensures that a reference name is well formed
    column
    Display data in columns
    credential
    Retrieve and store user credentials
    credential-cache
    Helper to temporarily store passwords in memory
    credential-store
    Helper to store credentials on disk
    fmt-merge-msg
    Produce a merge commit message
    interpret-trailers
    Add or parse structured information in commit messages
    mailinfo
    Extracts patch and authorship from a single e-mail message
    mailsplit
    Simple UNIX mbox splitter program
    merge-one-file
    The standard helper program to use with git-merge-index
    patch-id
    Compute unique ID for a patch
    sh-i18n
    Git's i18n setup code for shell scripts
    sh-setup
    Common Git shell script setup code
    stripspace
    Remove unnecessary whitespace
    ```
    `git help -a` and `git help -g` | list available subcommands and some concept guides.
    `git help <command>` or `git help <concept>` | to read about a specific subcommand or concept.
    `git help git` | for an overview of the system.
    `git help <command>` | to read about a specific subcommand

    ---
    Main Porcelain Commands
    `add` | Add file contents to the index
    `am` | Apply a series of patches from a mailbox
    `archive` | Create an archive of files from a named tree
    `bisect` | Use binary search to find the commit that introduced a bug
    `branch` | List, create, or delete branches
    `bundle` | Move objects and refs by archive
    `checkout` | Switch branches or restore working tree files
    `cherry-pick` | Apply the changes introduced by some existing commits
    `citool` | Graphical alternative to git-commit
    `clean` | Remove untracked files from the working tree
    `clone` | Clone a repository into a new directory
    `commit` | Record changes to the repository
    `describe` | Give an object a human readable name based on an available ref
    `diff` | Show changes between commits, commit and working tree, etc
    `fetch` | Download objects and refs from another repository
    `format-patch` | Prepare patches for e-mail submission
    `gc` | Cleanup unnecessary files and optimize the local repository
    `gitk` | The Git repository browser
    `grep` | Print lines matching a pattern
    `gui` | A portable graphical interface to Git
    `init` | Create an empty Git repository or reinitialize an existing one
    `log` | Show commit logs
    `merge` | Join two or more development histories together
    `mv` | Move or rename a file, a directory, or a symlink
    `notes` | Add or inspect object notes
    `pull` | Fetch from and integrate with another repository or a local branch
    `push` | Update remote refs along with associated objects
    `range-diff` | Compare two commit ranges (e.g. two versions of a branch)
    `rebase` | Reapply commits on top of another base tip
    `reset` | Reset current HEAD to the specified state
    `restore` | Restore working tree files
    `revert` | Revert some existing commits
    `rm` | Remove files from the working tree and from the index
    `shortlog` | Summarize `git log` output
    `show` | Show various types of objects
    `sparse-checkout` | Initialize and modify the sparse-checkout
    `stash` | Stash the changes in a dirty working directory away
    `status` | Show the working tree status
    `submodule` | Initialize, update or inspect submodules
    `switch` | Switch branches
    `tag` | Create, list, delete or verify a tag object signed with GPG
    `worktree` | Manage multiple working trees

    ---
    Ancillary Commands / Manipulators
    `config` | Get and set repository or global options
    `fast-export` | Git data exporter
    `fast-import` | Backend for fast Git data importers
    `filter-branch` | Rewrite branches
    `mergetool` | Run merge conflict resolution tools to resolve merge conflicts
    `pack-refs` | Pack heads and tags for efficient repository access
    `prune` | Prune all unreachable objects from the object database
    `reflog` | Manage reflog information
    `remote` | Manage set of tracked repositories
    `repack` | Pack unpacked objects in a repository
    `replace` | Create, list, delete refs to replace objects

    ---
    Ancillary Commands / Interrogators
    `annotate` | Annotate file lines with commit information
    `blame` | Show what revision and author last modified each line of a file
    `bugreport` | Collect information for user to file a bug report
    `count-objects` | Count unpacked number of objects and their disk consumption
    `difftool` | Show changes using common diff tools
    `fsck` | Verifies the connectivity and validity of the objects in the database
    `gitweb` | Git web interface (web frontend to Git repositories)
    `help` | Display help information about Git
    `instaweb` | Instantly browse your working repository in gitweb
    `merge-tree` | Show three-way merge without touching index
    `rerere` | Reuse recorded resolution of conflicted merges
    `show-branch` | Show branches and their commits
    `verify-commit` | Check the GPG signature of commits
    `verify-tag` | Check the GPG signature of tags
    `whatchanged` | Show logs with difference each commit introduces

    ---
    Interacting with Others
    `archimport` | Import a GNU Arch repository into Git
    `cvsexportcommit` | Export a single commit to a CVS checkout
    `cvsimport` | Salvage your data out of another SCM people love to hate
    `cvsserver` | A CVS server emulator for Git
    `imap-send` | Send a collection of patches from stdin to an IMAP folder
    `p4` | Import from and submit to Perforce repositories
    `quiltimport` | Applies a quilt patchset onto the current branch
    `request-pull` | Generates a summary of pending changes
    `send-email` | Send a collection of patches as emails
    `svn` | Bidirectional operation between a Subversion repository and Git

    ---
    Low-level Commands / Manipulators
    `apply` | Apply a patch to files and/or to the index
    `checkout-index` | Copy files from the index to the working tree
    `commit-graph` | Write and verify Git commit-graph files
    `commit-tree` | Create a new commit object
    `hash-object` | Compute object ID and optionally creates a blob from a file
    `index-pack` | Build pack index file for an existing packed archive
    `merge-file` | Run a three-way file merge
    `merge-index` | Run a merge for files needing merging
    `mktag` | Creates a tag object
    `mktree` | Build a tree-object from ls-tree formatted text
    `multi-pack-index` | Write and verify multi-pack-indexes
    `pack-objects` | Create a packed archive of objects
    `prune-packed` | Remove extra objects that are already in pack files
    `read-tree` | Reads tree information into the index
    `symbolic-ref` | Read, modify and delete symbolic refs
    `unpack-objects` | Unpack objects from a packed archive
    `update-index` | Register file contents in the working tree to the index
    `update-ref` | Update the object name stored in a ref safely
    `write-tree` | Create a tree object from the current index

    ---
    Low-level Commands / Interrogators
    `cat-file` | Provide content or type and size information for repository objects
    `cherry` | Find commits yet to be applied to upstream
    `diff-files` | Compares files in the working tree and the index
    `diff-index` | Compare a tree to the working tree or index
    `diff-tree` | Compares the content and mode of blobs found via two tree objects
    `for-each-ref` | Output information on each ref
    `get-tar-commit-id` | Extract commit ID from an archive created using git-archive
    `ls-files` | Show information about files in the index and the working tree
    `ls-remote` | List references in a remote repository
    `ls-tree` | List the contents of a tree object
    `merge-base` | Find as good common ancestors as possible for a merge
    `name-rev` | Find symbolic names for given revs
    `pack-redundant` | Find redundant pack files
    `rev-list` | Lists commit objects in reverse chronological order
    `rev-parse` | Pick out and massage parameters
    `show-index` | Show packed archive index
    `show-ref` | List references in a local repository
    `unpack-file` | Creates a temporary file with a blob's contents
    `var` | Show a Git logical variable
    `verify-pack` | Validate packed Git archive files

    ---
    Low-level Commands / Syncing Repositories
    `daemon` | A really simple server for Git repositories
    `fetch-pack` | Receive missing objects from another repository
    `http-backend` | Server side implementation of Git over HTTP
    `send-pack` | Push objects over Git protocol to another repository
    `update-server-info` | Update auxiliary info file to help dumb servers

    ---
    Low-level Commands / Internal Helpers
    `check-attr` | Display gitattributes information
    `check-ignore` | Debug gitignore / exclude files
    `check-mailmap` | Show canonical names and email addresses of contacts
    `check-ref-format` | Ensures that a reference name is well formed
    `column` | Display data in columns
    `credential` | Retrieve and store user credentials
    `credential-cache` | Helper to temporarily store passwords in memory
    `credential-store` | Helper to store credentials on disk
    `fmt-merge-msg` | Produce a merge commit message
    `interpret-trailers` | Add or parse structured information in commit messages
    `mailinfo` | Extracts patch and authorship from a single e-mail message
    `mailsplit` | Simple UNIX mbox splitter program
    `merge-one-file` | The standard helper program to use with git-merge-index
    `patch-id` | Compute unique ID for a patch
    `sh-i18n` | Git's i18n setup code for shell scripts
    `sh-setup` | Common Git shell script setup code
    `stripspace` | Remove unnecessary whitespace
  2. Artnoc1 revised this gist Sep 20, 2022. 1 changed file with 3 additions and 22 deletions.
    25 changes: 3 additions & 22 deletions GITCOMMANDS.md
    Original file line number Diff line number Diff line change
    @@ -5,35 +5,16 @@
    ### usage:
    ---
    git
    [--version]
    [--help]
    [-C <path>]
    [-c <name>=<value>]
    [--exec-path[=<path>]]
    [--html-path]
    [--man-path]
    [--info-path]
    [-p | --paginate | -P | --no-pager]
    [--no-replace-objects]
    [--bare]
    [--git-dir=<path>]
    [--work-tree=<path>]
    [--namespace=<name>]
    <command>
    [<args>]
    `git [--version] [--help] [-C <path>] [-c <name>=<value>] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path] [-p | --paginate | -P | --no-pager] [--no-replace-objects] [--bare] [--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>] <command> [<args>]`
    ---
    ### These are common Git commands used in various situations:
    ---
    #### start a working area (see also: git help tutorial)
    clone
    Clone a repository into a new directory
    init
    Create an empty Git repository or reinitialize an existing one
    `clone` Clone a repository into a new directory
    `init` Create an empty Git repository or reinitialize an existing one
    ---
    #### work on the current change (see also: git help everyday)
  3. Artnoc1 renamed this gist Apr 30, 2021. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  4. Artnoc1 revised this gist Mar 17, 2021. No changes.
  5. Artnoc1 revised this gist Mar 3, 2021. 1 changed file with 19 additions and 7 deletions.
    26 changes: 19 additions & 7 deletions 0_GITCOMMANDS.md
    Original file line number Diff line number Diff line change
    @@ -114,11 +114,16 @@ push
    Update remote refs along with associated objects
    'git help -a' and 'git help -g'
    'git help -a' and
    'git help -g'
    list available subcommands and some concept guides.
    See 'git help <command>' or 'git help <concept>'
    See
    'git help <command>' or
    'git help <concept>'
    to read about a specific subcommand or concept.
    See 'git help git' for an overview of the system.
    See
    'git help git'
    for an overview of the system.
    ---
    @@ -166,12 +171,19 @@ workflows
    ---
    `git help -a` and `git help -g`
    `git help -a` and
    `git help -g`
    list available subcommands and some concept guides.
    See `git help <command>` or `git help <concept>`
    See
    `git help <command>` or
    `git help <concept>`
    to read about a specific subcommand or concept.
    See `git help git` for an overview of the system.
    See 'git help <command>' to read about a specific subcommand
    See
    `git help git`
    for an overview of the system.
    See
    'git help <command>'
    to read about a specific subcommand
    ```

    ```
  6. Artnoc1 revised this gist Mar 3, 2021. 1 changed file with 4 additions and 5 deletions.
    9 changes: 4 additions & 5 deletions 0_GITCOMMANDS.md
    Original file line number Diff line number Diff line change
    @@ -174,7 +174,6 @@ See `git help git` for an overview of the system.
    See 'git help <command>' to read about a specific subcommand
    ```


    ```
    Main Porcelain Commands
    @@ -306,7 +305,7 @@ worktree
    ```

    ```
    Ancillary Commands / Manipulators
    @@ -346,7 +345,7 @@ replace
    ```

    ```
    Ancillary Commands / Interrogators
    @@ -397,7 +396,7 @@ whatchanged
    ```

    ```
    Interacting with Others
    @@ -433,7 +432,7 @@ svn
    ```

    ```
    Low-level Commands / Manipulators
  7. Artnoc1 revised this gist Mar 3, 2021. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion 0_GITCOMMANDS.md
    Original file line number Diff line number Diff line change
    @@ -496,7 +496,7 @@ write-tree
    ```

    ```
    Low-level Commands / Interrogators
  8. Artnoc1 renamed this gist Aug 29, 2020. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  9. Artnoc1 renamed this gist Aug 29, 2020. 1 changed file with 2 additions and 3 deletions.
    5 changes: 2 additions & 3 deletions GITHELPCOMMANDS.markdown → GITHELPCOMMANDS.markdown.md
    Original file line number Diff line number Diff line change
    @@ -1,7 +1,6 @@
    ```
    ### git help
    ---

    ---
    ### usage:
    @@ -173,7 +172,7 @@ See `git help <command>` or `git help <concept>`
    to read about a specific subcommand or concept.
    See `git help git` for an overview of the system.
    See 'git help <command>' to read about a specific subcommand

    ```


    ```
  10. Artnoc1 revised this gist Aug 29, 2020. 1 changed file with 500 additions and 191 deletions.
    691 changes: 500 additions & 191 deletions GITHELPCOMMANDS.markdown
    Original file line number Diff line number Diff line change
    @@ -120,50 +120,50 @@ list available subcommands and some concept guides.
    See 'git help <command>' or 'git help <concept>'
    to read about a specific subcommand or concept.
    See 'git help git' for an overview of the system.

    ---

    ## The common Git guides are:

    ---

    attributes
    Defining attributes per path
    cli
    Git command-line interface and conventions
    core-tutorial
    A Git core tutorial for developers
    cvs-migration
    Git for CVS users
    diffcore
    Tweaking diff output
    everyday
    A useful minimum set of commands for Everyday Git
    faq
    Frequently asked questions about using Git
    glossary
    A Git Glossary
    hooks
    Hooks used by Git
    ignore
    Specifies intentionally untracked files to ignore
    modules
    Defining submodule properties
    namespaces
    Git namespaces
    repository-layout
    Git Repository Layout
    revisions
    Specifying revisions and ranges for Git
    submodules
    Mounting one repository inside another
    tutorial
    A tutorial introduction to Git
    tutorial-2
    A tutorial introduction to Git: part two
    workflows
    An overview of recommended workflows with Git
    attributes
    Defining attributes per path
    cli
    Git command-line interface and conventions
    core-tutorial
    A Git core tutorial for developers
    cvs-migration
    Git for CVS users
    diffcore
    Tweaking diff output
    everyday
    A useful minimum set of commands for Everyday Git
    faq
    Frequently asked questions about using Git
    glossary
    A Git Glossary
    hooks
    Hooks used by Git
    ignore
    Specifies intentionally untracked files to ignore
    modules
    Defining submodule properties
    namespaces
    Git namespaces
    repository-layout
    Git Repository Layout
    revisions
    Specifying revisions and ranges for Git
    submodules
    Mounting one repository inside another
    tutorial
    A tutorial introduction to Git
    tutorial-2
    A tutorial introduction to Git: part two
    workflows
    An overview of recommended workflows with Git


    ---
    @@ -176,157 +176,466 @@ See 'git help <command>' to read about a specific subcommand



    ## Main Porcelain Commands
    add Add file contents to the index
    am Apply a series of patches from a mailbox
    archive Create an archive of files from a named tree
    bisect Use binary search to find the commit that introduced a bug
    branch List, create, or delete branches
    bundle Move objects and refs by archive
    checkout Switch branches or restore working tree files
    cherry-pick Apply the changes introduced by some existing commits
    citool Graphical alternative to git-commit
    clean Remove untracked files from the working tree
    clone Clone a repository into a new directory
    commit Record changes to the repository
    describe Give an object a human readable name based on an available ref
    diff Show changes between commits, commit and working tree, etc
    fetch Download objects and refs from another repository
    format-patch Prepare patches for e-mail submission
    gc Cleanup unnecessary files and optimize the local repository
    gitk The Git repository browser
    grep Print lines matching a pattern
    gui A portable graphical interface to Git
    init Create an empty Git repository or reinitialize an existing one
    log Show commit logs
    merge Join two or more development histories together
    mv Move or rename a file, a directory, or a symlink
    notes Add or inspect object notes
    pull Fetch from and integrate with another repository or a local branch
    push Update remote refs along with associated objects
    range-diff Compare two commit ranges (e.g. two versions of a branch)
    rebase Reapply commits on top of another base tip
    reset Reset current HEAD to the specified state
    restore Restore working tree files
    revert Revert some existing commits
    rm Remove files from the working tree and from the index
    shortlog Summarize 'git log' output
    show Show various types of objects
    sparse-checkout Initialize and modify the sparse-checkout
    stash Stash the changes in a dirty working directory away
    status Show the working tree status
    submodule Initialize, update or inspect submodules
    switch Switch branches
    tag Create, list, delete or verify a tag object signed with GPG
    worktree Manage multiple working trees

    ## Ancillary Commands / Manipulators
    config Get and set repository or global options
    fast-export Git data exporter
    fast-import Backend for fast Git data importers
    filter-branch Rewrite branches
    mergetool Run merge conflict resolution tools to resolve merge conflicts
    pack-refs Pack heads and tags for efficient repository access
    prune Prune all unreachable objects from the object database
    reflog Manage reflog information
    remote Manage set of tracked repositories
    repack Pack unpacked objects in a repository
    replace Create, list, delete refs to replace objects

    ## Ancillary Commands / Interrogators
    annotate Annotate file lines with commit information
    blame Show what revision and author last modified each line of a file
    bugreport Collect information for user to file a bug report
    count-objects Count unpacked number of objects and their disk consumption
    difftool Show changes using common diff tools
    fsck Verifies the connectivity and validity of the objects in the database
    gitweb Git web interface (web frontend to Git repositories)
    help Display help information about Git
    instaweb Instantly browse your working repository in gitweb
    merge-tree Show three-way merge without touching index
    rerere Reuse recorded resolution of conflicted merges
    show-branch Show branches and their commits
    verify-commit Check the GPG signature of commits
    verify-tag Check the GPG signature of tags
    whatchanged Show logs with difference each commit introduces

    ## Interacting with Others
    archimport Import a GNU Arch repository into Git
    cvsexportcommit Export a single commit to a CVS checkout
    cvsimport Salvage your data out of another SCM people love to hate
    cvsserver A CVS server emulator for Git
    imap-send Send a collection of patches from stdin to an IMAP folder
    p4 Import from and submit to Perforce repositories
    quiltimport Applies a quilt patchset onto the current branch
    request-pull Generates a summary of pending changes
    send-email Send a collection of patches as emails
    svn Bidirectional operation between a Subversion repository and Git

    ## Low-level Commands / Manipulators
    apply Apply a patch to files and/or to the index
    checkout-index Copy files from the index to the working tree
    commit-graph Write and verify Git commit-graph files
    commit-tree Create a new commit object
    hash-object Compute object ID and optionally creates a blob from a file
    index-pack Build pack index file for an existing packed archive
    merge-file Run a three-way file merge
    merge-index Run a merge for files needing merging
    mktag Creates a tag object
    mktree Build a tree-object from ls-tree formatted text
    multi-pack-index Write and verify multi-pack-indexes
    pack-objects Create a packed archive of objects
    prune-packed Remove extra objects that are already in pack files
    read-tree Reads tree information into the index
    symbolic-ref Read, modify and delete symbolic refs
    unpack-objects Unpack objects from a packed archive
    update-index Register file contents in the working tree to the index
    update-ref Update the object name stored in a ref safely
    write-tree Create a tree object from the current index

    ## Low-level Commands / Interrogators
    cat-file Provide content or type and size information for repository objects
    cherry Find commits yet to be applied to upstream
    diff-files Compares files in the working tree and the index
    diff-index Compare a tree to the working tree or index
    diff-tree Compares the content and mode of blobs found via two tree objects
    for-each-ref Output information on each ref
    get-tar-commit-id Extract commit ID from an archive created using git-archive
    ls-files Show information about files in the index and the working tree
    ls-remote List references in a remote repository
    ls-tree List the contents of a tree object
    merge-base Find as good common ancestors as possible for a merge
    name-rev Find symbolic names for given revs
    pack-redundant Find redundant pack files
    rev-list Lists commit objects in reverse chronological order
    rev-parse Pick out and massage parameters
    show-index Show packed archive index
    show-ref List references in a local repository
    unpack-file Creates a temporary file with a blob's contents
    var Show a Git logical variable
    verify-pack Validate packed Git archive files

    ## Low-level Commands / Syncing Repositories
    daemon A really simple server for Git repositories
    fetch-pack Receive missing objects from another repository
    http-backend Server side implementation of Git over HTTP
    send-pack Push objects over Git protocol to another repository
    update-server-info Update auxiliary info file to help dumb servers

    ## Low-level Commands / Internal Helpers
    check-attr Display gitattributes information
    check-ignore Debug gitignore / exclude files
    check-mailmap Show canonical names and email addresses of contacts
    check-ref-format Ensures that a reference name is well formed
    column Display data in columns
    credential Retrieve and store user credentials
    credential-cache Helper to temporarily store passwords in memory
    credential-store Helper to store credentials on disk
    fmt-merge-msg Produce a merge commit message
    interpret-trailers Add or parse structured information in commit messages
    mailinfo Extracts patch and authorship from a single e-mail message
    mailsplit Simple UNIX mbox splitter program
    merge-one-file The standard helper program to use with git-merge-index
    patch-id Compute unique ID for a patch
    sh-i18n Git's i18n setup code for shell scripts
    sh-setup Common Git shell script setup code
    stripspace Remove unnecessary whitespace
    ```
    Main Porcelain Commands
    add
    Add file contents to the index
    am
    Apply a series of patches from a mailbox
    archive
    Create an archive of files from a named tree
    bisect
    Use binary search to find the commit that introduced a bug
    branch
    List, create, or delete branches
    bundle
    Move objects and refs by archive
    checkout
    Switch branches or restore working tree files
    cherry-pick
    Apply the changes introduced by some existing commits
    citool
    Graphical alternative to git-commit
    clean
    Remove untracked files from the working tree
    clone
    Clone a repository into a new directory
    commit
    Record changes to the repository
    describe
    Give an object a human readable name based on an available ref
    diff
    Show changes between commits, commit and working tree, etc
    fetch
    Download objects and refs from another repository
    format-patch
    Prepare patches for e-mail submission
    gc
    Cleanup unnecessary files and optimize the local repository
    gitk
    The Git repository browser
    grep
    Print lines matching a pattern
    gui
    A portable graphical interface to Git
    init
    Create an empty Git repository or reinitialize an existing one
    log
    Show commit logs
    merge
    Join two or more development histories together
    mv
    Move or rename a file, a directory, or a symlink
    notes
    Add or inspect object notes
    pull
    Fetch from and integrate with another repository or a local branch
    push
    Update remote refs along with associated objects
    range-diff
    Compare two commit ranges (e.g. two versions of a branch)
    rebase
    Reapply commits on top of another base tip
    reset
    Reset current HEAD to the specified state
    restore
    Restore working tree files
    revert
    Revert some existing commits
    rm
    Remove files from the working tree and from the index
    shortlog
    Summarize 'git log' output
    show
    Show various types of objects
    sparse-checkout
    Initialize and modify the sparse-checkout
    stash
    Stash the changes in a dirty working directory away
    status
    Show the working tree status
    submodule
    Initialize, update or inspect submodules
    switch
    Switch branches
    tag
    Create, list, delete or verify a tag object signed with GPG
    worktree
    Manage multiple working trees
    ```

    ```
    Ancillary Commands / Manipulators
    config
    Get and set repository or global options
    fast-export
    Git data exporter
    fast-import
    Backend for fast Git data importers
    filter-branch
    Rewrite branches
    mergetool
    Run merge conflict resolution tools to resolve merge conflicts
    pack-refs
    Pack heads and tags for efficient repository access
    prune
    Prune all unreachable objects from the object database
    reflog
    Manage reflog information
    remote
    Manage set of tracked repositories
    repack
    Pack unpacked objects in a repository
    replace
    Create, list, delete refs to replace objects
    ```

    ```
    Ancillary Commands / Interrogators
    annotate
    Annotate file lines with commit information
    blame
    Show what revision and author last modified each line of a file
    bugreport
    Collect information for user to file a bug report
    count-objects
    Count unpacked number of objects and their disk consumption
    difftool
    Show changes using common diff tools
    fsck
    Verifies the connectivity and validity of the objects in the database
    gitweb
    Git web interface (web frontend to Git repositories)
    help
    Display help information about Git
    instaweb
    Instantly browse your working repository in gitweb
    merge-tree
    Show three-way merge without touching index
    rerere
    Reuse recorded resolution of conflicted merges
    show-branch
    Show branches and their commits
    verify-commitCheck the GPG signature of commits
    verify-tag
    Check the GPG signature of tags
    whatchanged
    Show logs with difference each commit introduces
    ```

    ```
    Interacting with Others
    archimport
    Import a GNU Arch repository into Git
    cvsexportcommit
    Export a single commit to a CVS checkout
    cvsimport
    Salvage your data out of another SCM people love to hate
    cvsserver
    A CVS server emulator for Git
    imap-send
    Send a collection of patches from stdin to an IMAP folder
    p4
    Import from and submit to Perforce repositories
    quiltimport
    Applies a quilt patchset onto the current branch
    request-pull
    Generates a summary of pending changes
    send-email
    Send a collection of patches as emails
    svn
    Bidirectional operation between a Subversion repository and Git
    ```

    ```
    Low-level Commands / Manipulators
    apply
    Apply a patch to files and/or to the index
    checkout-index
    Copy files from the index to the working tree
    commit-graph
    Write and verify Git commit-graph files
    commit-tree
    Create a new commit object
    hash-object
    Compute object ID and optionally creates a blob from a file
    index-pack
    Build pack index file for an existing packed archive
    merge-file
    Run a three-way file merge
    merge-index
    Run a merge for files needing merging
    mktag
    Creates a tag object
    mktree
    Build a tree-object from ls-tree formatted text
    multi-pack-index
    Write and verify multi-pack-indexes
    pack-objects
    Create a packed archive of objects
    prune-packed
    Remove extra objects that are already in pack files
    read-tree
    Reads tree information into the index
    symbolic-ref
    Read, modify and delete symbolic refs
    unpack-objects
    Unpack objects from a packed archive
    update-index
    Register file contents in the working tree to the index
    update-ref
    Update the object name stored in a ref safely
    write-tree
    Create a tree object from the current index
    ```

    ```
    Low-level Commands / Interrogators
    cat-file
    Provide content or type and size information for repository objects
    cherry
    Find commits yet to be applied to upstream
    diff-files
    Compares files in the working tree and the index
    diff-index
    Compare a tree to the working tree or index
    diff-tree
    Compares the content and mode of blobs found via two tree objects
    for-each-ref
    Output information on each ref
    get-tar-commit-id
    Extract commit ID from an archive created using git-archive
    ls-files
    Show information about files in the index and the working tree
    ls-remote
    List references in a remote repository
    ls-tree
    List the contents of a tree object
    merge-base
    Find as good common ancestors as possible for a merge
    name-rev
    Find symbolic names for given revs
    pack-redundant
    Find redundant pack files
    rev-list
    Lists commit objects in reverse chronological order
    rev-parse
    Pick out and massage parameters
    show-index
    Show packed archive index
    show-ref
    List references in a local repository
    unpack-file
    Creates a temporary file with a blob's contents
    var
    Show a Git logical variable
    verify-pack
    Validate packed Git archive files
    ```

    ```
    Low-level Commands / Syncing Repositories
    daemon
    A really simple server for Git repositories
    fetch-pack
    Receive missing objects from another repository
    http-backend
    Server side implementation of Git over HTTP
    send-pack
    Push objects over Git protocol to another repository
    update-server-info
    Update auxiliary info file to help dumb servers
    ```

    ```
    Low-level Commands / Internal Helpers
    check-attr
    Display gitattributes information
    check-ignore
    Debug gitignore / exclude files
    check-mailmap
    Show canonical names and email addresses of contacts
    check-ref-format
    Ensures that a reference name is well formed
    column
    Display data in columns
    credential
    Retrieve and store user credentials
    credential-cache
    Helper to temporarily store passwords in memory
    credential-store
    Helper to store credentials on disk
    fmt-merge-msg
    Produce a merge commit message
    interpret-trailers
    Add or parse structured information in commit messages
    mailinfo
    Extracts patch and authorship from a single e-mail message
    mailsplit
    Simple UNIX mbox splitter program
    merge-one-file
    The standard helper program to use with git-merge-index
    patch-id
    Compute unique ID for a patch
    sh-i18n
    Git's i18n setup code for shell scripts
    sh-setup
    Common Git shell script setup code
    stripspace
    Remove unnecessary whitespace
    ```
  11. Artnoc1 revised this gist Aug 28, 2020. 1 changed file with 83 additions and 73 deletions.
    156 changes: 83 additions & 73 deletions GITHELPCOMMANDS.markdown
    Original file line number Diff line number Diff line change
    @@ -1,10 +1,9 @@
    ```
    # git help
    ### git help

    ---

    ---
    ## usage:
    ### usage:

    ---
    git
    @@ -30,83 +29,99 @@ git

    ---
    #### start a working area (see also: git help tutorial)
    clone
    Clone a repository into a new directory
    init
    Create an empty Git repository or reinitialize an existing one

    clone
    Clone a repository into a new directory
    init
    Create an empty Git repository or reinitialize an existing one


    ---
    #### work on the current change (see also: git help everyday)
    add
    Add file contents to the index
    mv
    Move or rename a file, a directory, or a symlink
    restore
    Restore working tree files
    rm
    Remove files from the working tree and from the index
    sparse-checkout
    Initialize and modify the sparse-checkout

    add
    Add file contents to the index

    mv
    Move or rename a file, a directory, or a symlink

    restore
    Restore working tree files

    rm
    Remove files from the working tree and from the index

    sparse-checkout
    Initialize and modify the sparse-checkout


    ---
    #### examine the history and state (see also: git help revisions)
    bisect
    Use binary search to find the commit that introduced a bug
    diff Show changes between commits, commit and working tree, etc
    grep Print lines matching a pattern
    log Show commit logs
    show Show various types of objects
    status Show the working tree status

    bisect
    Use binary search to find the commit that introduced a bug

    diff
    Show changes between commits, commit and working tree, etc

    grep
    Print lines matching a pattern

    log
    Show commit logs

    show
    Show various types of objects

    status
    Show the working tree status


    ---
    #### grow, mark and tweak your common history
    branch
    List, create, or delete branches
    commit
    Record changes to the repository
    merge
    Join two or more development histories together
    rebase
    Reapply commits on top of another base tip
    reset
    Reset current HEAD to the specified state
    switch
    Switch branches
    tag
    Create, list, delete or verify a tag object signed with GPG

    branch
    List, create, or delete branches

    commit
    Record changes to the repository

    merge
    Join two or more development histories together

    rebase
    Reapply commits on top of another base tip

    reset
    Reset current HEAD to the specified state

    switch
    Switch branches

    tag
    Create, list, delete or verify a tag object signed with GPG


    ---
    #### collaborate (see also: git help workflows)
    fetch
    Download objects and refs from another repository
    pull
    Fetch from and integrate with another repository or a local branch
    push
    Update remote refs along with associated objects

    fetch
    Download objects and refs from another repository

    pull
    Fetch from and integrate with another repository or a local branch

    push
    Update remote refs along with associated objects


    ---
    > 'git help -a' and 'git help -g' list available subcommands and some
    > concept guides. See 'git help <command>' or 'git help <concept>'
    > to read about a specific subcommand or concept.
    > See 'git help git' for an overview of the system.
    ---
    'git help -a' and 'git help -g'
    list available subcommands and some concept guides.
    See 'git help <command>' or 'git help <concept>'
    to read about a specific subcommand or concept.
    See 'git help git' for an overview of the system.


    ---
    ---

    ## The common Git guides are:
    @@ -150,20 +165,17 @@ git
    workflows
    An overview of recommended workflows with Git

    ```
    ---
    `git help -a` and `git help -g` list available subcommands and some
    concept guides.

    ---
    `git help -a` and `git help -g`
    list available subcommands and some concept guides.
    See `git help <command>` or `git help <concept>`
    to read about a specific subcommand or concept.
    ---
    See `git help git` for an overview of the system.
    ---
    See 'git help <command>' to read about a specific subcommand
    ---
    ```
    ```



    ## Main Porcelain Commands
    add Add file contents to the index
    am Apply a series of patches from a mailbox
    @@ -317,6 +329,4 @@ See 'git help <command>' to read about a specific subcommand
    patch-id Compute unique ID for a patch
    sh-i18n Git's i18n setup code for shell scripts
    sh-setup Common Git shell script setup code
    stripspace Remove unnecessary whitespace
    ```
    ```
    stripspace Remove unnecessary whitespace
  12. Artnoc1 revised this gist Aug 28, 2020. 1 changed file with 2 additions and 0 deletions.
    2 changes: 2 additions & 0 deletions GITHELPCOMMANDS.markdown
    Original file line number Diff line number Diff line change
    @@ -1,3 +1,4 @@
    ```
    # git help
    ---
    @@ -317,4 +318,5 @@ See 'git help <command>' to read about a specific subcommand
    sh-i18n Git's i18n setup code for shell scripts
    sh-setup Common Git shell script setup code
    stripspace Remove unnecessary whitespace
    ```
    ```
  13. Artnoc1 revised this gist Aug 28, 2020. 1 changed file with 19 additions and 45 deletions.
    64 changes: 19 additions & 45 deletions GITHELPCOMMANDS.markdown
    Original file line number Diff line number Diff line change
    @@ -1,58 +1,31 @@
    # git help

    ---

    ---
    ## usage:

    ---
    git [--version]
    [--help]
    [-C <path>]
    [-c <name>=<value>]
    [--exec-path[=<path>]]
    [--html-path]
    [--man-path]
    [--info-path]
    [-p | --paginate | -P | --no-pager]
    [--no-replace-objects]
    [--bare]
    [--git-dir=<path>]
    [--work-tree=<path>]
    [--namespace=<name>]
    <command>
    [<args>]
    git
    [--version]
    [--help]
    [-C <path>]
    [-c <name>=<value>]
    [--exec-path[=<path>]]
    [--html-path]
    [--man-path]
    [--info-path]
    [-p | --paginate | -P | --no-pager]
    [--no-replace-objects]
    [--bare]
    [--git-dir=<path>]
    [--work-tree=<path>]
    [--namespace=<name>]
    <command>
    [<args>]

    ---
    ### These are common Git commands used in various situations:

    ---
    #### start a working area (see also: git help tutorial)
    @@ -189,7 +162,7 @@ See `git help git` for an overview of the system.
    See 'git help <command>' to read about a specific subcommand
    ---
    ```

    ```
    ## Main Porcelain Commands
    add Add file contents to the index
    am Apply a series of patches from a mailbox
    @@ -344,3 +317,4 @@ See 'git help <command>' to read about a specific subcommand
    sh-i18n Git's i18n setup code for shell scripts
    sh-setup Common Git shell script setup code
    stripspace Remove unnecessary whitespace
    ```
  14. Artnoc1 revised this gist Aug 28, 2020. 1 changed file with 214 additions and 1 deletion.
    215 changes: 214 additions & 1 deletion GITHELPCOMMANDS.markdown
    Original file line number Diff line number Diff line change
    @@ -130,4 +130,217 @@
    > concept guides. See 'git help <command>' or 'git help <concept>'
    > to read about a specific subcommand or concept.
    > See 'git help git' for an overview of the system.
    ---
    ---

    ---
    ---

    ## The common Git guides are:

    ---

    attributes
    Defining attributes per path
    cli
    Git command-line interface and conventions
    core-tutorial
    A Git core tutorial for developers
    cvs-migration
    Git for CVS users
    diffcore
    Tweaking diff output
    everyday
    A useful minimum set of commands for Everyday Git
    faq
    Frequently asked questions about using Git
    glossary
    A Git Glossary
    hooks
    Hooks used by Git
    ignore
    Specifies intentionally untracked files to ignore
    modules
    Defining submodule properties
    namespaces
    Git namespaces
    repository-layout
    Git Repository Layout
    revisions
    Specifying revisions and ranges for Git
    submodules
    Mounting one repository inside another
    tutorial
    A tutorial introduction to Git
    tutorial-2
    A tutorial introduction to Git: part two
    workflows
    An overview of recommended workflows with Git

    ```
    ---
    `git help -a` and `git help -g` list available subcommands and some
    concept guides.
    ---
    See `git help <command>` or `git help <concept>`
    to read about a specific subcommand or concept.
    ---
    See `git help git` for an overview of the system.
    ---
    See 'git help <command>' to read about a specific subcommand
    ---
    ```

    ## Main Porcelain Commands
    add Add file contents to the index
    am Apply a series of patches from a mailbox
    archive Create an archive of files from a named tree
    bisect Use binary search to find the commit that introduced a bug
    branch List, create, or delete branches
    bundle Move objects and refs by archive
    checkout Switch branches or restore working tree files
    cherry-pick Apply the changes introduced by some existing commits
    citool Graphical alternative to git-commit
    clean Remove untracked files from the working tree
    clone Clone a repository into a new directory
    commit Record changes to the repository
    describe Give an object a human readable name based on an available ref
    diff Show changes between commits, commit and working tree, etc
    fetch Download objects and refs from another repository
    format-patch Prepare patches for e-mail submission
    gc Cleanup unnecessary files and optimize the local repository
    gitk The Git repository browser
    grep Print lines matching a pattern
    gui A portable graphical interface to Git
    init Create an empty Git repository or reinitialize an existing one
    log Show commit logs
    merge Join two or more development histories together
    mv Move or rename a file, a directory, or a symlink
    notes Add or inspect object notes
    pull Fetch from and integrate with another repository or a local branch
    push Update remote refs along with associated objects
    range-diff Compare two commit ranges (e.g. two versions of a branch)
    rebase Reapply commits on top of another base tip
    reset Reset current HEAD to the specified state
    restore Restore working tree files
    revert Revert some existing commits
    rm Remove files from the working tree and from the index
    shortlog Summarize 'git log' output
    show Show various types of objects
    sparse-checkout Initialize and modify the sparse-checkout
    stash Stash the changes in a dirty working directory away
    status Show the working tree status
    submodule Initialize, update or inspect submodules
    switch Switch branches
    tag Create, list, delete or verify a tag object signed with GPG
    worktree Manage multiple working trees

    ## Ancillary Commands / Manipulators
    config Get and set repository or global options
    fast-export Git data exporter
    fast-import Backend for fast Git data importers
    filter-branch Rewrite branches
    mergetool Run merge conflict resolution tools to resolve merge conflicts
    pack-refs Pack heads and tags for efficient repository access
    prune Prune all unreachable objects from the object database
    reflog Manage reflog information
    remote Manage set of tracked repositories
    repack Pack unpacked objects in a repository
    replace Create, list, delete refs to replace objects

    ## Ancillary Commands / Interrogators
    annotate Annotate file lines with commit information
    blame Show what revision and author last modified each line of a file
    bugreport Collect information for user to file a bug report
    count-objects Count unpacked number of objects and their disk consumption
    difftool Show changes using common diff tools
    fsck Verifies the connectivity and validity of the objects in the database
    gitweb Git web interface (web frontend to Git repositories)
    help Display help information about Git
    instaweb Instantly browse your working repository in gitweb
    merge-tree Show three-way merge without touching index
    rerere Reuse recorded resolution of conflicted merges
    show-branch Show branches and their commits
    verify-commit Check the GPG signature of commits
    verify-tag Check the GPG signature of tags
    whatchanged Show logs with difference each commit introduces

    ## Interacting with Others
    archimport Import a GNU Arch repository into Git
    cvsexportcommit Export a single commit to a CVS checkout
    cvsimport Salvage your data out of another SCM people love to hate
    cvsserver A CVS server emulator for Git
    imap-send Send a collection of patches from stdin to an IMAP folder
    p4 Import from and submit to Perforce repositories
    quiltimport Applies a quilt patchset onto the current branch
    request-pull Generates a summary of pending changes
    send-email Send a collection of patches as emails
    svn Bidirectional operation between a Subversion repository and Git

    ## Low-level Commands / Manipulators
    apply Apply a patch to files and/or to the index
    checkout-index Copy files from the index to the working tree
    commit-graph Write and verify Git commit-graph files
    commit-tree Create a new commit object
    hash-object Compute object ID and optionally creates a blob from a file
    index-pack Build pack index file for an existing packed archive
    merge-file Run a three-way file merge
    merge-index Run a merge for files needing merging
    mktag Creates a tag object
    mktree Build a tree-object from ls-tree formatted text
    multi-pack-index Write and verify multi-pack-indexes
    pack-objects Create a packed archive of objects
    prune-packed Remove extra objects that are already in pack files
    read-tree Reads tree information into the index
    symbolic-ref Read, modify and delete symbolic refs
    unpack-objects Unpack objects from a packed archive
    update-index Register file contents in the working tree to the index
    update-ref Update the object name stored in a ref safely
    write-tree Create a tree object from the current index

    ## Low-level Commands / Interrogators
    cat-file Provide content or type and size information for repository objects
    cherry Find commits yet to be applied to upstream
    diff-files Compares files in the working tree and the index
    diff-index Compare a tree to the working tree or index
    diff-tree Compares the content and mode of blobs found via two tree objects
    for-each-ref Output information on each ref
    get-tar-commit-id Extract commit ID from an archive created using git-archive
    ls-files Show information about files in the index and the working tree
    ls-remote List references in a remote repository
    ls-tree List the contents of a tree object
    merge-base Find as good common ancestors as possible for a merge
    name-rev Find symbolic names for given revs
    pack-redundant Find redundant pack files
    rev-list Lists commit objects in reverse chronological order
    rev-parse Pick out and massage parameters
    show-index Show packed archive index
    show-ref List references in a local repository
    unpack-file Creates a temporary file with a blob's contents
    var Show a Git logical variable
    verify-pack Validate packed Git archive files

    ## Low-level Commands / Syncing Repositories
    daemon A really simple server for Git repositories
    fetch-pack Receive missing objects from another repository
    http-backend Server side implementation of Git over HTTP
    send-pack Push objects over Git protocol to another repository
    update-server-info Update auxiliary info file to help dumb servers

    ## Low-level Commands / Internal Helpers
    check-attr Display gitattributes information
    check-ignore Debug gitignore / exclude files
    check-mailmap Show canonical names and email addresses of contacts
    check-ref-format Ensures that a reference name is well formed
    column Display data in columns
    credential Retrieve and store user credentials
    credential-cache Helper to temporarily store passwords in memory
    credential-store Helper to store credentials on disk
    fmt-merge-msg Produce a merge commit message
    interpret-trailers Add or parse structured information in commit messages
    mailinfo Extracts patch and authorship from a single e-mail message
    mailsplit Simple UNIX mbox splitter program
    merge-one-file The standard helper program to use with git-merge-index
    patch-id Compute unique ID for a patch
    sh-i18n Git's i18n setup code for shell scripts
    sh-setup Common Git shell script setup code
    stripspace Remove unnecessary whitespace
  15. Artnoc1 created this gist Aug 28, 2020.
    133 changes: 133 additions & 0 deletions GITHELPCOMMANDS.markdown
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,133 @@
    # git help

    ---

    ---
    ## usage:

    ---
    git [--version]
    [--help]
    [-C <path>]
    [-c <name>=<value>]
    [--exec-path[=<path>]]
    [--html-path]
    [--man-path]
    [--info-path]
    [-p | --paginate | -P | --no-pager]
    [--no-replace-objects]
    [--bare]
    [--git-dir=<path>]
    [--work-tree=<path>]
    [--namespace=<name>]
    <command>
    [<args>]

    ---
    ### These are common Git commands used in various situations:

    ---
    #### start a working area (see also: git help tutorial)
    clone
    Clone a repository into a new directory
    init
    Create an empty Git repository or reinitialize an existing one

    ---
    #### work on the current change (see also: git help everyday)
    add
    Add file contents to the index
    mv
    Move or rename a file, a directory, or a symlink
    restore
    Restore working tree files
    rm
    Remove files from the working tree and from the index
    sparse-checkout
    Initialize and modify the sparse-checkout

    ---
    #### examine the history and state (see also: git help revisions)
    bisect
    Use binary search to find the commit that introduced a bug
    diff Show changes between commits, commit and working tree, etc
    grep Print lines matching a pattern
    log Show commit logs
    show Show various types of objects
    status Show the working tree status

    ---
    #### grow, mark and tweak your common history
    branch
    List, create, or delete branches
    commit
    Record changes to the repository
    merge
    Join two or more development histories together
    rebase
    Reapply commits on top of another base tip
    reset
    Reset current HEAD to the specified state
    switch
    Switch branches
    tag
    Create, list, delete or verify a tag object signed with GPG

    ---
    #### collaborate (see also: git help workflows)
    fetch
    Download objects and refs from another repository
    pull
    Fetch from and integrate with another repository or a local branch
    push
    Update remote refs along with associated objects

    ---
    > 'git help -a' and 'git help -g' list available subcommands and some
    > concept guides. See 'git help <command>' or 'git help <concept>'
    > to read about a specific subcommand or concept.
    > See 'git help git' for an overview of the system.
    ---