repos.list Reference

The repos.list file lists the repositories (and optionally branches) that repos clone will clone. Place it in the root of your project directory.

Basic Format

Each line is one repository:

owner/repo

Lines starting with # are comments and are ignored.

Cloning a Specific Branch

Append @branch to clone only that branch:

owner/repo@develop

Custom Target Directory

Add a name after the repository to clone into a different directory:

owner/repo my-data

Worktrees

Use @branch without a repository name to clone only that branch from the most recently listed repository (or the current repository if none has been listed yet):

owner/repo
@feature-x
@bugfix-123

This produces a full clone of owner/repo plus two single-branch clones — no extra network clones of the full repository required.

Add --worktree to an @branch line to create a Git worktree instead of a separate clone:

owner/repo
@feature-x --worktree
@bugfix-123 --worktree

This produces a full clone of owner/repo plus two worktrees — no extra network clones required.

Visibility

Control whether new repositories are created as public or private:

owner/repo --public
owner/other-repo --private

Global Flags

Place a flag on its own line (with nothing else except optional comments) to apply it to every subsequent repository:

Flag Effect
--public Create all repositories as public by default
--private Create all repositories as private by default (the default)
--codespaces Configure Codespaces authentication for all repositories
--worktree Use worktrees instead of separate clones for all @branch lines

Per-line --public/--private flags always override the global default.

Example

--private        # default visibility for new repos
--codespaces     # set up Codespaces auth for all repos

myorg/backend
myorg/frontend@develop
@staging --worktree        # worktree of frontend at staging branch
myorg/docs --public        # override: create docs repo as public

After repos clone, the parent directory looks like:

workspace/
├── my-project/            # your project (contains repos.list)
├── backend/
├── frontend-develop/
├── frontend-staging/      # worktree
└── docs/