# atmos git list

List the repositories configured under [`git.repositories`](/cli/configuration/git) with their local clone state, URIs, providers, branches, and resolved workdirs. Built on the standard Atmos list rendering pipeline, with the same column, format, and filter behavior as other `atmos list` commands. Also available as `atmos list git-repositories`.

## Usage

```shell
atmos git list [flags]
```

With repositories configured in `atmos.yaml`:

```yaml
git:
  repositories:
    flux-deploy:
      uri: https://github.com/acme/flux-deploy.git
      branch: main

    generated-terraform:
      uri: https://github.com/acme/generated-terraform.git
```

```shell
atmos git list
atmos list git-repositories     # alias
```

## Examples

```shell
# List all configured repositories (default sort: name ascending).
# Default table output shows a green dot for clean clones, yellow for dirty
# clones, and gray for missing workdirs.
atmos git list

# Select columns
atmos git list --columns=name,uri,workdir

# Include status fields when using custom columns
atmos git list --check-status --columns=status,name,workdir

# Machine-readable output
atmos git list --format=json
atmos git list --format=csv --delimiter=";"

# Alias registered under atmos list
atmos list git-repositories --format=yaml
```

## Columns

- **`name`**
  Logical repository name (the key under 
  `git.repositories`
  ).
- **`uri`**
  Repository URI.
- **`provider`**
  Resolved provider (
  `cli`
  ).
- **`branch`**
  Configured branch, or 
  `(default)`
   when the remote default branch is used.
- **`workdir`**
  Resolved workdir — the automatic XDG location or the explicit 
  `workdir`
   override.
- **`status`**
  Colored table indicator for local clone state: green dot for 
  `cloned`
  , yellow dot for 
  `dirty`
  , and gray dot for 
  `missing`
  . In non-TTY output this resolves to the semantic status text.
- **`status_text`**
  `cloned`
  , 
  `missing`
  , or 
  `dirty`
  . Used by machine-readable default output and custom columns that need status text.

Columns can also be customized in `atmos.yaml` under `git.list.columns` — see [Git Configuration](/cli/configuration/git#list-output).

## Flags

- **`--check-status` (optional)**

  Probe each workdir on disk and populate status fields when using custom columns. Default table output already probes status to show the dot column. Probes run concurrently with a bounded worker pool.
- **`--columns` (optional)**

  Comma-separated list of columns to display.
  Environment variable: `ATMOS_GIT_LIST_COLUMNS`
- **`--format` (optional)**

  Output format: `table` (default), `json`, `yaml`, `csv`, or `tsv`.
  Environment variable: `ATMOS_GIT_LIST_FORMAT`
- **`--delimiter` (optional)**

  Field delimiter for `csv`/`tsv` output.
- **`--filter` (optional)**

  YQ expression to filter the listed repositories.
  Environment variable: `ATMOS_GIT_LIST_FILTER`

## Related

- [`atmos git status`](/cli/commands/git/status) — full porcelain status for one repository (shares the `--check-status` probe)
- [`atmos git clone`](/cli/commands/git/clone) — materialize a `missing` workdir
- [Git Configuration](/cli/configuration/git) — `git.repositories` and `git.list`
