GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - yonasBSD/github.rs: Automatically update all your forked repositories on Github.

BranchesTags
Open more actions menu

Latest commit

 

History

150 Commits
150 Commits

Folders and files

NameName
Last commit message
Last commit date
.cargo
.cargo
 
 
.config
.config
 
 
.github
.github
 
 
LICENSES
LICENSES
 
 
backpack
backpack
 
 
xtask
xtask
 
 
.codacy.yaml
.codacy.yaml
 
 
.codecov.yaml
.codecov.yaml
 
 
.gitignore
.gitignore
 
 
CHANGELOG.md
CHANGELOG.md
 
 
Cargo.toml
Cargo.toml
 
 
LICENSE.md
LICENSE.md
 
 
README.md
README.md
 
 
SECURITY.md
SECURITY.md
 
 
Taskfile.dist.yaml
Taskfile.dist.yaml
 
 
about.toml
about.toml
 
 
cliff.toml
cliff.toml
 
 
cog.toml
cog.toml
 
 
deny.toml
deny.toml
 
 
nfpm.yaml
nfpm.yaml
 
 
sonar-project.properties
sonar-project.properties
 
 
treefmt.toml
treefmt.toml
 
 
trivy.yaml
trivy.yaml
 
 

Repository files navigation

github-rs

Linting workflow testing workflow packaging cross-build codecov

Security Audit Scorecard Audit Codacy Badge Quality Gate Status Security Rating Vulnerabilities

GitHub last commit Dependency Status GitHub Release License

A powerful Rust CLI tool to automatically update all your forked GitHub repositories, keeping them in sync with their upstream sources.


🎯 Overview

When you fork repositories on GitHub, they quickly become out of date as the upstream repositories receive new commits. github-rs solves this problem by automatically synchronizing all your forks with their upstream repositories, helping you maintain up-to-date copies and reduce merge conflicts.

✨ Features

  • Bulk Fork Updates: Automatically update all your forked repositories in one command
  • Smart Synchronization: Keeps your forks in sync with upstream changes
  • Conflict Detection: Identifies potential merge conflicts before they become problems
  • Fast Performance: Built in Rust for speed and reliability
  • GitHub API Integration: Seamlessly integrates with GitHub's API
  • Minimal Configuration: Simple setup with GitHub token authentication

📦 Installation

From Source

git clone https://github.com/yonasBSD/github-rs.git
cd github-rs
cargo build --release

The binary will be available at target/release/github-rs.

Using Cargo

cargo install --git https://github.com/yonasBSD/github-rs.git

🚀 Quick Start

  1. Generate a GitHub Personal Access Token

    Create a token with repo scope at: https://github.com/settings/tokens

  2. Set Up Authentication

    export GITHUB_TOKEN="your_token_here"
  3. Run the Tool

    github-rs

    This will scan all your forked repositories and update them with the latest changes from their upstream sources.

💻 Usage

Basic Usage

Update all your forked repositories:

github-rs

Command Line Options

github-rs [OPTIONS]

Options:
  -h, --help           Print help information
  -V, --version        Print version information

🔧 Configuration

Environment Variables

  • GITHUB_TOKEN - Your GitHub personal access token (required)
  • GITHUB_USER - Your GitHub username (optional, auto-detected from token)

Token Permissions

Your GitHub token needs the following scopes:

  • repo - Full control of private repositories
  • workflow - Update GitHub Action workflows (if needed)

🏗️ How It Works

  1. Discovery: Fetches all repositories you've forked on GitHub
  2. Analysis: Identifies which forks are behind their upstream repositories
  3. Synchronization: Merges upstream changes into your fork's default branch
  4. Report: Provides a summary of updated repositories and any issues encountered

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

Development Setup

# Clone the repository
git clone https://github.com/yonasBSD/github-rs.git
cd github-rs

# Install dependencies
cargo build

# Run tests
cargo test

# Run with cargo
cargo run

Running Tests

# Run all tests
cargo test

# Run tests with coverage
cargo test --all-features

# Run linting
cargo clippy -- -D warnings

# Format code
cargo fmt

📋 Requirements

  • Rust 1.70.0 or higher
  • GitHub Personal Access Token with appropriate permissions
  • Active internet connection

🔒 Security

  • Never commit your GitHub token to version control
  • Use environment variables or secure credential managers
  • Review the Security Policy for reporting vulnerabilities

📄 License

This project is licensed under the terms specified in LICENSE.md.

🙏 Acknowledgments

  • Generated from yonasBSD/rust-ci-github-actions-workflow
  • Built with the power of Rust 🦀
  • Inspired by the need to keep countless forks synchronized

📊 Project Status

This project is actively maintained. Check the Issues page for known problems and feature requests.

🔗 Related Projects

  • hub - GitHub CLI wrapper
  • gh - Official GitHub CLI
  • git-sync - Keep Git repos in sync

📞 Support

  • 🐛 Report a Bug
  • 💡 Request a Feature
  • 📖 Documentation

📈 Changelog

See CHANGELOG.md for a list of changes and version history.


Note: This tool modifies your GitHub repositories. Always review changes before pushing to production environments. Consider testing on non-critical forks first.

About

Automatically update all your forked repositories on Github.

Resources

Readme
License

Security policy

Security policy
Activity
Custom properties

Stars

2 stars

Watchers

1 watching

Forks

0 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

Generated from yonasBSD/rust-ci-github-actions-workflow
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.