An open API service indexing awesome lists of open source software.

https://github.com/miguelrodo/repos

Cross-platform CLI for managing multiple related Git repositories as a unified workspace
https://github.com/miguelrodo/repos

cli codespaces cross-platform git multi-repo pipeline python-package r-package vscode

Last synced: about 2 months ago
JSON representation

Cross-platform CLI for managing multiple related Git repositories as a unified workspace

Awesome Lists containing this project

README

          

# repos - Multi-Repository Management Tool

[![Test Installation Methods](https://github.com/MiguelRodo/repos/actions/workflows/test-installation.yml/badge.svg)](https://github.com/MiguelRodo/repos/actions/workflows/test-installation.yml)
[![Test Suite](https://github.com/MiguelRodo/repos/actions/workflows/test-suite.yml/badge.svg)](https://github.com/MiguelRodo/repos/actions/workflows/test-suite.yml)
[![R-CMD-check](https://github.com/MiguelRodo/repos/actions/workflows/R-CMD-check.yml/badge.svg)](https://github.com/MiguelRodo/repos/actions/workflows/R-CMD-check.yml)
[![Python package](https://github.com/MiguelRodo/repos/actions/workflows/python-package.yml/badge.svg)](https://github.com/MiguelRodo/repos/actions/workflows/python-package.yml)

Manage multiple Git repositories as a unified workspace from a single `repos.list` file.

## Installation

Installable on any OS (Linux, macOS, Windows) with R and Python wrappers available.
→ [Full installation guide](https://miguelrodo.github.io/repos/install.html)

## Quick Start

Create a `repos.list` file in your project directory listing the repositories you want:

```
myorg/data-curation
myorg/analysis
myorg/documentation
```

Then run:

```bash
repos clone
```

This clones all listed repositories into the parent directory of your current location.

## What else can you do?

**Customise `repos.list`** — clone specific branches (`owner/repo@branch`), use
worktrees (`@branch-name`), set repository visibility (`--public`/`--private`),
and more. → [repos.list reference](https://miguelrodo.github.io/repos/repos-list.html)

**Run a pipeline across all repos** — if your repositories contain a `run.sh` script
(or any script you specify), `repos run` executes it in each one.
→ [Running pipelines](https://miguelrodo.github.io/repos/pipelines.html)

## License

MIT License — see [debian/copyright](debian/copyright)

## Contributing

Issues and pull requests welcome at

## Author

Miguel Rodo \