{"repo":"gruntwork-io/git-xargs","free":true,"listed":false,"github":"https://github.com/gruntwork-io/git-xargs","clone":"git clone https://github.com/gruntwork-io/git-xargs.git","description":"git-xargs is a command-line tool (CLI) for making updates across multiple Github repositories with a single command.","language":"Go","stars":1119,"topics":["productivity","git","automation","golang","cli"],"license":"Apache-2.0","category":"cli-tools","readme_excerpt":"Table of contents - Introduction - Reference - Contributing Introduction Overview git-xargs is a command-line tool (CLI) for making updates across multiple GitHub repositories with a single command. You give git-xargs : 1. a script or a command to run 2. a list of repos and git-xargs will: 1. clone each repo 1. run your specified script or command against it 1. commit any changes 1. open pull requests 1. provide a detailed report of everything that happened Git-xargs leverages goroutines to perform the repo-updating work in parallel, so it is very fast. For example, have you ever needed to add a particular file across many repos at once? Or to run a search and replace to change your company or product name across 150 repos with one command? What about upgrading Terraform modules to all use the latest syntax? How about adding a CI/CD configuration file, if it doesn't already exist, or modifying it in place if it does, but only on a subset of repositories you select? You can handle these use cases and many more with a single git-xargs command. Example: writing a new file to every repo in your GitHub organization As an example, let's use git-xargs to create a new file in every repo: Here's what it looks like in action: In this example, every repo in your org will have a new file named hello-world.txt written to it with the contents \"Hello, World!\". You'll then receive an easy-to-read printout of exactly what happened on STDOUT : Getting started Installation option 1: Homebrew If","default_branch":null,"files":null,"tree":[],"storefront":"/r/gruntwork-io","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/gruntwork-io/git-xargs/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}