Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tkachenko0/gh-pullmaster
Automate Git pulls for all subdirectory repositories in one go.
https://github.com/tkachenko0/gh-pullmaster
bash-script gh-extension gh-extensions
Last synced: 19 days ago
JSON representation
Automate Git pulls for all subdirectory repositories in one go.
- Host: GitHub
- URL: https://github.com/tkachenko0/gh-pullmaster
- Owner: tkachenko0
- License: mit
- Created: 2024-06-01T02:25:02.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-06-01T21:21:18.000Z (7 months ago)
- Last Synced: 2024-08-22T13:17:46.709Z (4 months ago)
- Topics: bash-script, gh-extension, gh-extensions
- Language: Shell
- Homepage:
- Size: 3.91 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Git Pullmaster
![GitHub](https://img.shields.io/badge/GitHub-Repository-blue?logo=github)
A simple GitHub CLI extension that pulls updates for all git repositories located in subfolders of the current directory. This is particularly useful in the context of microservices.
## 📜 Description
This extension iterates over each directory in the current folder, checks if it is a Git repository, and if so, pulls the latest changes from the respective remote branch. It provides clear output indicating which repositories are being pulled and skips directories that are not Git repositories.
## 🛠️ Installation
To install this extension, you need to have the GitHub CLI installed. If you don't have it yet, you can find installation instructions [here](https://docs.github.com/en/github-cli/github-cli/installation).
1. **Install the extension**:
```bash
gh extension install tkachenko0/gh-pullmaster
```## 🚀 Usage
1. Navigate to the directory containing your subdirectories with Git repositories.
```bash
cd path/to/your/directory
```2. Run the extension:
```bash
gh pullmaster
```## 💻 Example Output
When you run the extension, you should see output similar to the following:
```plaintext
Pulling in ProjectA on branch main
Already up to date.
Skipping directory non-git-folder/ - not a git repository
Pulling in ProjectB on branch develop
Updating a1b2c3d..d4e5f6
```## 📚 More Information
For more information on using GitHub CLI extensions, refer to the [GitHub CLI documentation](https://docs.github.com/en/github-cli/github-cli/using-github-cli-extensions).