git-column - Display data in columns

git column [--command=<name>] [--[raw-]mode=<mode>] [--width=<width>]
             [--indent=<string>] [--nl=<string>] [--padding=<n>]

This command formats the lines of its standard input into a table with multiple columns. Each input line occupies one cell of the table. It is used internally by other git commands to format output into columns.


Look up layout mode using configuration variable column.<name> and column.ui.


Specify layout mode. See configuration variable column.ui for option syntax in git-config(1).


Same as --mode but take mode encoded as a number. This is mainly used by other commands that have already parsed layout mode.


Specify the terminal width. By default git column will detect the terminal width, or fall back to 80 if it is unable to do so.


String to be printed at the beginning of each line.


String to be printed at the end of each line, including newline character.


The number of spaces between columns. One space by default.

Format data by columns:

$ seq 1 24 | git column --mode=column --padding=5
1      4      7      10     13     16     19     22
2      5      8      11     14     17     20     23
3      6      9      12     15     18     21     24

Format data by rows:

$ seq 1 21 | git column --mode=row --padding=5
1      2      3      4      5      6      7
8      9      10     11     12     13     14
15     16     17     18     19     20     21

List some tags in a table with unequal column widths:

$ git tag --list 'v2.4.*' --column=row,dense
v2.4.0  v2.4.0-rc0  v2.4.0-rc1  v2.4.0-rc2  v2.4.0-rc3
v2.4.1  v2.4.10     v2.4.11     v2.4.12     v2.4.2
v2.4.3  v2.4.4      v2.4.5      v2.4.6      v2.4.7
v2.4.8  v2.4.9

Everything below this line in this section is selectively included from the git-config(1) documentation. The content is the same as what’s found there:


Specify whether supported commands should output in columns. This variable consists of a list of tokens separated by spaces or commas:

These options control when the feature should be enabled (defaults to never):


always show in columns


never show in columns


show in columns if the output is to the terminal

These options control layout (defaults to column). Setting any of these implies always if none of always, never, or auto are specified.


fill columns before rows


fill rows before columns


show in one column

Finally, these options can be combined with a layout option (defaults to nodense):


make unequal size columns to utilize more space


make equal size columns


Specify whether to output branch listing in git branch in columns. See column.ui for details.


Specify the layout when listing items in git clean -i, which always shows files and directories in columns. See column.ui for details.


Specify whether to output untracked files in git status in columns. See column.ui for details.


Specify whether to output tag listings in git tag in columns. See column.ui for details.

Part of the git(1) suite

06/01/2024 Git 2.45.2