Scroll to navigation

LAZYGIT(1) General Commands Manual LAZYGIT(1)

NAME

lazygitSimple terminal UI for git commands

SYNOPSIS

lazygit [git-arg] [-h | --help] [-v | --version] [-p | --path path] [-f | --filter path] [-d | --debug] [-l | --logs] [---profile] [-c | ---config] [-cd | ---print-config-dir] [-ucd | ---use-config-dir dir] [-w | ---work-tree path] [-g | ---git-dir path] [-ucf | ---use-config-file files] [-sm | ---screen-mode mode]

DESCRIPTION

lazygit is a simple terminal UI for git commands that makes git easier to use.

It provides an interactive interface to perform common git operations such as:

  • Viewing and staging files
  • Committing changes
  • Browsing logs and diffs
  • Managing branches and remotes
  • Handling stashes

All features of lazygit can be easily accessed using arrow keys and intuitive keystrokes.

OPTIONS

Positional Arguments

git-arg
Panel to focus upon opening lazygit. Accepted values (based on git terminology): , , , . Ignored if --filter argument is passed.

Flags

, ---help
Displays help with available flags, subcommands, and positional value parameters.
, ---version
Print the current version of lazygit.
, ---path path
Path of the git repository. Equivalent to ---work-tree=path and ---git-dir=path /.git.
, ---filter path
Path to filter on in git log -- <path>. When in filter mode, the commits, reflog, and stash are filtered based on the given path, and some operations are restricted.
, ---debug
Run in debug mode with logging. Use the LOG_LEVEL environment variable to set the log level (debug, info, warn, error).
, ---logs
Tail lazygit logs. Intended for use when lazygit --debug is running in another terminal tab.
Start the profiler and serve it on HTTP port 6060. See /usr/share/doc/lazygit/CONTRIBUTING.md.gz for more details.
, ---config
Print the default config.
, ---print-config-dir
Print the path to the configuration directory.
, ---use-config-dir dir
Override the default configuration directory with the provided directory.
, ---work-tree path
Set the Git ---work-tree argument.
, ---git-dir path
Set the Git ---git-dir argument.
, ---use-config-file file1,file2,...
Use a comma-separated list of custom config file(s).
, ---screen-mode mode
Set the initial screen mode, which determines the size of the focused panel. Valid values are: , , .

KEYBINDINGS

Default keybindings vary by context. For example:

Move up/down in lists.
h / l
Move between panels (left/right).
Focus a specific panel.
[/]
Move between tabs within a panel.
Stage / unstage a file.
Open commit panel.
Push to remote.
Pull from remote.
Search.
Scroll content (e.g. log or diff views).
Select item or toggle checkbox (e.g. in stash or patch panels).
Enter panel or confirm action.
Cancel action or close popup.
Quit the application.

To view the full keybindings list, press ? in the application.

You can refer to the following files for full keystrokes:
/usr/share/doc/lazygit/docs/keybindings/Keybindings_en.md.gz

FILES

~/.config/lazygit/config.yml
User configuration file. This file defines keybindings, theme settings, git override commands, and more. You can refer to the following file for the complete list of keystrokes:
  • /usr/share/doc/lazygit/docs/Config.md.gz
  • /usr/share/doc/lazygit/docs/Custom_Command_Keybindings.md.gz
  • /usr/share/doc/lazygit/docs/Custom_Pagers.md
~/.config/lazygit/state.yml
UI layout and persistent state.

AUTHORS

lazygit was written by Jesse Duffield <jesseduffield@gmail.com>.

This manual was created by Jongmin Kim <jmkim@debian.org> for the Debian project (but may be used by others).

April 24, 2025 lazygit 0.50.0+ds1-1+b2