Projects & Groups

Track entire project directories including repos, env files, and secrets

Adding a Project

A project is a directory that ConfigSync tracks holistically. When you add a project, ConfigSync auto-detects git repos, .env files, and secrets within it.

Terminal

configsync add project ~/git/myapp

Each project tracks:

  • name — derived from the folder name
  • path — absolute path to the project directory
  • repo — git remote URL (if detected)
  • secrets[] — any secrets associated with this project
  • configs[] — config files tracked within the project

Groups

A group is a folder that contains multiple projects. Adding a group registers every sub-directory as a separate project.

Terminal

# Add all projects under ~/git

configsync add group ~/git

~
Groups are a convenient way to onboard many projects at once. Each sub-directory becomes its own project entry.

Environment Injection

By default, pull writes .env files directly to disk in the project directory. The inject_as_env option writes to a separate env_inject directory instead, keeping your working tree clean.

Terminal

configsync add project ~/git/myapp --inject-as-env

Filtering by Project or Group

Use --project and --group flags on pull to restore only specific projects or groups.

Terminal

# Pull only a specific project

configsync pull --project myapp

# Pull all projects in a group

configsync pull --group ~/git

Managing Projects

Terminal

# List tracked projects

configsync list

# Remove a project

configsync remove project myapp

# Remove a group

configsync remove group ~/git