Skip to main content

atomic remote

Manage named remote repositories.

Synopsis

atomic remote [OPTIONS]
atomic remote <SUBCOMMAND>

Description

Remotes are named references to remote repository URLs. They allow you to use short names like origin instead of full URLs when pushing, pulling, or cloning.

When invoked with no subcommand, atomic remote lists all configured remotes.

Subcommands

remote (no subcommand)

List all configured remotes.

# List remotes (short)
atomic remote

# List remotes with full URLs
atomic remote -v

Example output:

origin    https://api.atomic.dev/acme/platform/core/code
upstream https://api.atomic.dev/community/oss/atomic/code

Options:

OptionDescription
-v, --verboseShow full URLs alongside remote names

add

Add a new remote.

atomic remote add <NAME> <URL>

Arguments:

ArgumentDescription
<NAME>Short name for the remote (e.g., origin, upstream)
<URL>Full URL of the remote repository

Examples:

# Add an origin remote
atomic remote add origin https://api.atomic.dev/acme/platform/core/code

# Add an upstream remote
atomic remote add upstream https://api.atomic.dev/community/oss/atomic/code

remove

Remove a remote. Alias: rm.

atomic remote remove <NAME>

Arguments:

ArgumentDescription
<NAME>Name of the remote to remove

Examples:

atomic remote remove upstream
atomic remote rm upstream

set-url

Change the URL of an existing remote.

atomic remote set-url <NAME> <URL>

Arguments:

ArgumentDescription
<NAME>Name of the remote to update
<URL>New URL for the remote

Examples:

atomic remote set-url origin https://new-api.atomic.dev/acme/platform/core/code

rename

Rename an existing remote.

atomic remote rename <OLD> <NEW>

Arguments:

ArgumentDescription
<OLD>Current name of the remote
<NEW>New name for the remote

Examples:

atomic remote rename origin primary

default

Set the default remote used by push and pull when no remote is specified.

atomic remote default <NAME>

Arguments:

ArgumentDescription
<NAME>Name of the remote to use as default

Examples:

# Set origin as the default
atomic remote default origin

# Now push/pull use origin automatically
atomic push
atomic pull

Configuration

Remotes are stored in .atomic/config.toml under the [remotes] section:

[remotes]
default = "origin"

[remotes.origin]
url = "https://api.atomic.dev/acme/platform/core/code"

[remotes.upstream]
url = "https://api.atomic.dev/community/oss/atomic/code"

Examples

Set up a new project with a remote

atomic init myproject
cd myproject
atomic remote add origin https://api.atomic.dev/acme/platform/myproject/code
atomic remote default origin

Work with multiple remotes

# Add both origin and upstream
atomic remote add origin https://api.atomic.dev/acme/platform/core/code
atomic remote add upstream https://api.atomic.dev/community/oss/atomic/code

# Push to origin (default)
atomic push

# Pull from upstream explicitly
atomic pull upstream

Migrate a remote URL

# Check current remotes
atomic remote -v

# Update the URL
atomic remote set-url origin https://new-endpoint.atomic.dev/acme/platform/core/code

# Verify
atomic remote -v

Differences from Git

AspectGitAtomic
Storage.git/config.atomic/config.toml
Default remoteConvention (origin)Explicit via atomic remote default
Fetch vs Push URLsSeparateSingle URL per remote
RefspecsComplex fetch/push refspecsViews sync directly

See Also

  • push — Push changes to a remote
  • pull — Pull changes from a remote
  • clone — Clone a remote repository
  • init — Initialize a new repository