Subcommands93 subcommands
git archive
Create an archive of files from a named tree
git commit
Record changes to the repository
git config
Change Git configuration
git rebase
Reapply commits on top of another base tip
git add
Add file contents to the index
git stage
Add file contents to the staging area
git status
Show the working tree status
git clean
Shows which files would be removed from working directory
git revert
Create new commit that undoes all of the changes made in <commit>, then apply it to the current branch
git ls-remote
List references in a remote repository
git push
Update remote refs
git pull
Integrate with another repository
git diff
Show changes between commits, commit and working tree, etc
git reset
Reset current HEAD to the specified state
git remote
Manage remote repository
git remote add
Add a remote named <name> for the repository at <url>
git remote set-head
Sets or deletes the default branch
git remote set-branches
Changes the list of branches tracked by the named remote. This can be used to track a subset of the available remote branches after the initial setup for a remote
git remote rm
Removes given remote [name]
git remote rename
Removes given remote [name]
git remote get-url
Retrieves the URLs for a remote
git remote set-url
Changes the URLs for the remote
git remote show
Gives some information about the remote [name]
git remote prune
Equivalent to git fetch --prune [name], except that no new references will be fetched
git remote update
Fetch updates for remotes or remote groups in the repository as defined by remotes.<group>
git fetch
Download objects and refs from another repository
git stash
Temporarily stores all the modified tracked files
git stash push
Save your local modifications to a new stash entry and roll them back to HEAD
git stash show
Show the changes recorded in the stash entry as a diff
git stash save
Temporarily stores all the modified tracked files
git stash pop
Restores the most recently stashed files
git stash list
Lists all stashed changesets
git stash drop
Discards the most recently stashed changeset
git stash clear
Remove all the stash entries
git stash apply
Like pop, but do not remove the state from the stash list
git stash branch
Creates and checks out a new branch named
git stash create
Creates a stash entry
git stash store
Store a given stash in the stash ref, updating the stash reflog
git reflog
Show history of events with hashes
git clone
Clone a repository into a new directory
git init
Create an empty Git repository or reinitialize an existing one
git mv
Move or rename a file, a directory, or a symlink
git rm
Remove files from the working tree and from the index
git bisect
Use binary search to find the commit that introduced a bug
git bisect start
Reset bisect state and start bisection
git bisect bad
Mark commits as bad
git bisect new
Mark commits as new
git bisect old
Mark commits as old
git bisect good
Mark commits as good
git bisect next
Find next bisection to test and check it out
git bisect terms
Show the terms used for old and new commits (default: bad, good)
git bisect skip
Mark <rev>... untestable revisions
git bisect reset
Finish bisection search and go back to commit
git bisect visualize
See the currently remaining suspects in gitk
git bisect replay
Replay bisection log
git bisect log
Show bisect log
git bisect run
Use <cmd>... to automatically bisect
git grep
Print lines matching a pattern
git show
Show various types of objects
git branch
List, create, or delete branches
git checkout
Switch branches or restore working tree files
git cherry-pick
Apply the changes introduced by some existing commits
git submodule
Initialize, update or inspect submodules
git submodule add
Add the given repository as a submodule at the given path to the changeset to be committed next to the current project
git submodule status
Show the status of the submodules
git submodule init
Initialize the submodules recorded in the index
git submodule deinit
Unregister the given submodules
git submodule update
Update the registered submodules to match what the superproject expects by cloning missing submodules, fetching missing commits in submodules and updating the working tree of the submodules
git submodule set-branch
Sets the default remote tracking branch for the submodule
git submodule set-url
Sets the URL of the specified submodule to <newurl>
git submodule summary
Show commit summary between the given commit (defaults to HEAD) and working tree/index
git submodule foreach
Evaluates an arbitrary shell command in each checked out submodule
git submodule sync
Synchronizes submodules' remote URL configuration setting to the value specified in .gitmodules
git submodule absorbgitdirs
If a git directory of a submodule is inside the submodule, move the git directory of the submodule into its superproject’s $GIT_DIR/modules path and then connect the git directory and its working directory by setting the core.worktree and adding a .git file pointing to the git directory embedded in the superprojects git directory
git merge
Join two or more development histories together
git mergetool
Open the git tool to fix conflicts
git tag
Create, list, delete or verify a tag object signed with GPG
git restore
Restore working tree files
git switch
Switch branches
git worktree
Manage multiple working trees
git worktree add
Create <path> and checkout <commit-ish> into it
git worktree list
List details of each working tree
git worktree lock
If a working tree is on a portable device or network share which is not always mounted, lock it to prevent its administrative files from being pruned automatically
git worktree move
Move a working tree to a new location
git worktree prune
Prune working tree information in $GIT_DIR/worktrees
git worktree remove
Remove a working tree
git worktree repair
Repair working tree administrative files, if possible, if they have become corrupted or outdated due to external factors
git worktree unlock
Unlock a working tree, allowing it to be pruned, moved or deleted
git apply
Apply a patch to files and/or to the index
git daemon
A really simple server for Git repositories