Skip to main content

Manages git repos inside a directory

Project description

Repos

PyPI version Unstable package

Manage your git repos.

Install

pip install repos

Usage

Inside a directory with several git repos run:

$ repos
Repos in /Users/hello/repos

STATUS              NAME                            BRANCH
────────────────    ────────────────────────────    ──────────
•   •  1↑  •  •     this-is-a-ahead-repo              master
•  1↓   •  •  •     this-is-a-behind-repo             master
•   •   •  •  •     this-is-a-clean-repo              master
                    this-is-a-directory/
1±      ⚑  •  •     this-is-a-dirty-repo              master
•   ⚑         •     this-repo-has-no-remotes          master
•   •   •  •  3     this-repo-has-three-branches      branch-3
•   •   •  2  •     this-repo-has-two-remotes         master

        1 directories
        1 without a remote ⚑
        1 without upstream ⚑
        1 changed
        1 behind
        1 ahead
        4 clean

To check all available commands:

$ repos help
NAME
    repos —  Manages your git repos

USAGE
    repos                       # Lists all repos in text format
    repos export --json         # Exports all repos as json
    repos export --yaml         # Exports all repos as yaml
    repos show REPO             # Shows the repo details
    repos save                  # Commits local changes
    repos push                  # Pushes up to the upstream
    repos pull                  # Pulls from the upstream
    repos sync                  # Pull from the upstream and pushes up
    repos help                  # Shows this help
    repos version               # Prints the current version

Todos

  • Show by default only repos with issues.

  • Show all with the -a | --all flag.

  • Add clone <url> command to clone a git repo.

  • Add export [file] command to dump all repos, branches and remotes into a file (by default repos.yaml).

  • Add import [file] command to clone repos, branches and remotes from a file (by default repos.yaml).

  • Add config [repo1,repo2] [key] [value] subcommand to store settings in the .git/repo.yaml file.

  • Add save [repo1,repo2] subcommand to commit all changes.

  • Add pull [repo1,repo2] subcommand to pull all the latest commits from the upstream.

  • Add sync [repo1,repo2] subcommand to commits all changes, pull the latest commits, and push local commits to the upstream.

  • Code the enabled config to turn off all other configs.

  • Customise the colours via env vars.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

repos-0.2.0.tar.gz (15.2 kB view details)

Uploaded Source

File details

Details for the file repos-0.2.0.tar.gz.

File metadata

  • Download URL: repos-0.2.0.tar.gz
  • Upload date:
  • Size: 15.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for repos-0.2.0.tar.gz
Algorithm Hash digest
SHA256 dcaf005be9f5b11c13a37eb851d8c9feba3541d70e8122c5b53adb21d326f11b
MD5 567fdad4547b73d128db70bb812fa344
BLAKE2b-256 3b8dc1169c0fcbb6f1de36b58e1afac2c8521082f71cd7a11e645767aa8b2221

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page