{"id":19166804,"url":"https://github.com/jcgay/parallel-git-repo","last_synced_at":"2025-05-07T13:36:00.603Z","repository":{"id":47106770,"uuid":"53794613","full_name":"jcgay/parallel-git-repo","owner":"jcgay","description":"Run command on git repositories in parallel","archived":false,"fork":false,"pushed_at":"2023-10-26T08:16:13.000Z","size":3795,"stargazers_count":4,"open_issues_count":2,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-04-19T22:34:50.283Z","etag":null,"topics":["git","go","parallel"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jcgay.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2016-03-13T16:16:47.000Z","updated_at":"2022-01-30T22:56:58.000Z","dependencies_parsed_at":"2022-08-30T21:23:06.806Z","dependency_job_id":"a563a60c-4b57-4f13-bb68-6dd3774ef60a","html_url":"https://github.com/jcgay/parallel-git-repo","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcgay%2Fparallel-git-repo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcgay%2Fparallel-git-repo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcgay%2Fparallel-git-repo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcgay%2Fparallel-git-repo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jcgay","download_url":"https://codeload.github.com/jcgay/parallel-git-repo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252887921,"owners_count":21819938,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["git","go","parallel"],"created_at":"2024-11-09T09:34:22.005Z","updated_at":"2025-05-07T13:36:00.586Z","avatar_url":"https://github.com/jcgay.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# parallel-git-repo\n\nRun command on git repositories in parallel.\n\n## Installation\n\n### Binaries\n\n - [macOS (64 bits)](https://bintray.com/jcgay/tools/download_file?file_path=v1.0.1%2Fparallel-git-repo-darwin-amd64)\n - Linux: [32 bits](https://bintray.com/jcgay/tools/download_file?file_path=v1.0.1%2Fparallel-git-repo-linux-386) / [64 bits](https://bintray.com/jcgay/tools/download_file?file_path=v1.0.1%2Fparallel-git-repo-linux-amd64)\n - [Windows (64 bits)](https://bintray.com/jcgay/tools/download_file?file_path=v1.0.1%2Fparallel-git-repo-windows-amd64)\n\n### Go style\n\n    go install github.com/jcgay/parallel-git-repo@latest\n\n## Configuration\n\nConfigure the repositories list where command will be run in `$HOME/.parallel-git-repositories`:\n\n```\n[repositories]\n  default = [\n    \"/Users/jcgay/dev/maven-notifier\",\n    \"/Users/jcgay/dev/maven-color\"\n  ]\n```\n\nThe group `default` is mandatory.\n\nYou can create groups of repositories to separate them by concern:\n\n```\n[repositories]\n  default = [\n    \"/Users/jcgay/dev/maven-color\",\n    \"/Users/jcgay/dev/buildplan-maven-plugin\"\n  ]\n  notifier = [\n    \"/Users/jcgay/dev/maven-notifier\",\n    \"/Users/jcgay/dev/gradle-notifier\"\n  ]\n```\n\nAlso define commands that you want to run on these repositories:\n\n```\n[commands]\n  fetch = \"git fetch -p\"\n  status = \"git status\"\n  pull = \"git pull\"\n  push = \"git push $@\"\n  checkout = \"git checkout $@\"\n  current-branch = \"git rev-parse --abbrev-ref HEAD\"\n  merge = \"git merge --log --no-ff $@\"\n  set-version = \"mvn versions:set -DnewVersion=$1\"\n  ismerged = \"git branch --list $1 -r --merged\"\n  contains = \"git branch -r --contains $1\"\n```\n\nThis is a [`TOML`](https://github.com/toml-lang/toml) file.\n\n## Usage\n\n### List available commands:\n\n    parallel-git-repo -h\n\nExample when running `pull` command:\n\n```\n$\u003e parallel-git-repo pull\nmaven-color: ✔\nmaven-notifier: ✔\n```\n\n### Run an arbitrary command:\n\n    parallel-git-repo run git remote -v\n\n### Run command for a specific group\n\n    parallel-git-repo -g=notifier status\n\n## Build\n\n### Status\n\n[![Build Status](https://travis-ci.org/jcgay/parallel-git-repo.svg?branch=master)](https://travis-ci.org/jcgay/parallel-git-repo)\n[![Code Report](https://goreportcard.com/badge/github.com/jcgay/parallel-git-repo)](https://goreportcard.com/report/github.com/jcgay/parallel-git-repo)\n[![Coverage Status](https://coveralls.io/repos/github/jcgay/parallel-git-repo/badge.svg?branch=master)](https://coveralls.io/github/jcgay/parallel-git-repo?branch=master)\n\n### Release\n\n    make release\n\n### List available tasks\n\n    make help\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcgay%2Fparallel-git-repo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjcgay%2Fparallel-git-repo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcgay%2Fparallel-git-repo/lists"}