Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nolte/go-repos-sync
Commandline Tool for Sync a set of remote Repos with your local FileSystem.
https://github.com/nolte/go-repos-sync
checkout github gitlab management
Last synced: about 1 month ago
JSON representation
Commandline Tool for Sync a set of remote Repos with your local FileSystem.
- Host: GitHub
- URL: https://github.com/nolte/go-repos-sync
- Owner: nolte
- License: gpl-3.0
- Created: 2021-01-03T10:50:35.000Z (almost 4 years ago)
- Default Branch: develop
- Last Pushed: 2023-01-25T09:01:54.000Z (almost 2 years ago)
- Last Synced: 2024-06-19T10:02:29.451Z (6 months ago)
- Topics: checkout, github, gitlab, management
- Language: Go
- Homepage: https://nolte.github.io/go-repos-sync
- Size: 207 KB
- Stars: 2
- Watchers: 2
- Forks: 3
- Open Issues: 12
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Go Repos Sync
[![Bugs](https://sonarcloud.io/api/project_badges/measure?project=nolte_go-repos-sync&metric=bugs)](https://sonarcloud.io/dashboard?id=nolte_go-repos-sync) [![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=nolte_go-repos-sync&metric=duplicated_lines_density)](https://sonarcloud.io/dashboard?id=nolte_go-repos-sync) [![CI Application Tests](https://github.com/nolte/go-repos-sync/actions/workflows/build-application.yaml/badge.svg)](https://github.com/nolte/go-repos-sync/actions/workflows/build-application.yaml)
---
Tool for keep Local Repository in Sync with public/private Remote Hosts like Github/Gitlab.
## Usage
```sh
go-repos-sync import bulk
```### Configuration
For Daily usage is it recommendet to Preconfigure the Import Commands, with Settings like: `Default Checkut Protocol`, `Checkut Base Directory`, and many more.
**Default Config Location:** `~/.repos-sync/config.yaml`
**Example:** [`./examples/config.yaml`](./examples/config.yaml)### Bulk Checkout Configuration
For `go-repos-sync import bulk` you will need a Configuration File with the Selected Repository for Sync, from different Remotes.
Examples:
- [`./examples/minimal-projects.yaml`](./examples/minimal-projects.yaml)
- [`./examples/complex-projects.yaml`](./examples/complex-projects.yaml)The Bulk Configs can be configure at the [Configuration](#configuration), by adding a Path/URL at `settings.bulkElements`, or you use the Commandline Paramaeter `--bulkConfig` for overwrite the [Configuration](#configuration) from file.
## Development
```sh
asdf plugin-add golangci-lint https://github.com/hypnoglow/asdf-golangci-lint.git
asdf plugin-add goreleaser https://github.com/kforsthoevel/asdf-goreleaser.gitasdf install
```### Build
```sh
goreleaser --snapshot --skip-publish --rm-dist --skip-sign
```* https://www.source-fellows.de/go-datenbank-orm-association/