backup data (code, comments, issues) from github

github-backup

Backup your GitHub repositories (including issues and comments).

The backup will include a copy of the git repository itself (a bare, mirror clone), the wiki repository if there is one, all of the repository issues and comments (including the important metadata for each issue and comment and any attached files), and all of the pull requests (including TBD). All information will be written to disk for easy follow-up with e.g., tar or similar and copy to the backup medium.

Owner
Mario Finelli
devops/software engineer
Mario Finelli
Comments
  • Backup releases and release artifacts

    Backup releases and release artifacts

    We need to backup all of the release data (release title and body text -- we already have the git tags in the repository). Part of that should include any manually uploaded release artifacts (we don't care about the source tar/zip files)

  • Backup projects

    Backup projects

    I still need to do some more research on exactly what data we can get back from the API about projects, but ideally we will save both repository and organization projects as well as the columns in them, any associated automation, and any non-issue cards (as well as links/info to issues that are in the project)

  • Backup branch protection rules

    Backup branch protection rules

    I need to do some more investigation on how/what data comes back from the API and so how/where we might store it in the final backup. It could probably be it's own file branches.yml or something (or maybe be merged into the main repository.yml file but that might be getting too cluttered for easy human consumption).

  • Backup repository deploy keys

    Backup repository deploy keys

    We'd like to add the public ssh key bits into the backup for a given repository. I'm not sure about naming conventions or where in the backup tree structure the data might live yet. Maybe we should just add them to the repository metadata yaml file since it's just plain text data anyway...

  • Implement rate limiting handling

    Implement rate limiting handling

    Right now we're completely ignoring any rate limiting information from the GitHub API which is fine for small organizations or single repositories (with a low number of issues, etc). But eventually we will need to detect and recover from being rate limited. This might also include drastic actions such as sleeping for one hour to let the 5,000 API calls per hour refresh, or something more intelligent where we introduce delays during calls if we're detecting that we'll have a lot of data.

  • Backup wikis

    Backup wikis

    If a repository has the wiki feature enabled then we should (mirror) clone it into a wiki directory alongside the repository itself.

    I'm not sure if it's possible yet or not, but if we can detect ahead of time if the wiki is empty or not then we should only do the clone if it actually has any data. (Otherwise we can probably detect that it's empty afterwards and clean it up then)

Related tags
A command-line tool that makes git easier to use with GitHub.

hub is a command line tool that wraps git in order to extend it with extra features and commands that make working with GitHub easier. For an official

Jan 1, 2023
:octocat: lazyhub - Terminal UI Client for GitHub using gocui.
:octocat: lazyhub - Terminal UI Client for GitHub using gocui.

lazyhub lazyhub - Terminal UI Client for GitHub using gocui. Demo Features ?? Check the trending repositories on GitHub today ?? Search repositories ?

Dec 14, 2022
Write Github actions in Go

goaction Package goaction enables writing Github Actions in Go. The idea is: write a standard Go script, one that works with go run, and use it as Git

Dec 20, 2022
A simple tool to help apply changes across many GitHub repositories simultaneously
A simple tool to help apply changes across many GitHub repositories simultaneously

A simple tool to help apply changes across many GitHub repositories simultaneously

Dec 22, 2022
A Github Action that verify if your README.md has broken links

A GitHub Action that automatically check if some link in your README.md is broken or not responding.

Nov 10, 2022
Find trending repositories on GitHub
Find trending repositories on GitHub

octotrends.com A niftly little tool I wrote to try and find repos and languages that are rapidly growing on GitHub. Growth rates are based on % growth

Jun 14, 2022
Store private data inside a git repository.

git-private lets you store private data inside a git repo. A common use case is protecting files containing API keys et.c.

Nov 13, 2022
A tool to sent comments to Issues or Pull Requests in Github from CI tools.

CommentCI A tool to sent comments to Issues or Pull Requests in Github from CI tools. Usage Required environment variables: GITHUB_COMMENT_USER - User

Apr 10, 2022
Publish Sonarqube PR issues as comments

?? Sonarqube PR Issues Review Simple Webhook for Sonarqube which publishes the issues found in the PR as review requesting changes. The only SCM that

Aug 5, 2022
gh is GitHub on the command line. It brings pull requests, issues, and other GitHub concepts to the terminal next to where you are already working with git and your code
gh is GitHub on the command line. It brings pull requests, issues, and other GitHub concepts to the terminal next to where you are already working with git and your code

gh is GitHub on the command line. It brings pull requests, issues, and other GitHub concepts to the terminal next to where you are already working with git and your code

Jan 24, 2022
A simple application, demo at this point, on how to pull a backup from Collibra on prem (say for Cohesity backup)
A simple application, demo at this point, on how to pull a backup from Collibra on prem (say for Cohesity backup)

go-get-collibra-backup Introduction This repository is a very simple go application that's intended, at this point, more of a demonstration about how

Dec 10, 2021
Lightweight, single-binary Backup Repository client. Part of E2E Backup Architecture designed by RiotKit

Backup Maker Tiny backup client packed in a single binary. Interacts with a Backup Repository server to store files, uses GPG to secure your backups e

Apr 4, 2022
An action that comments PipeCD's PlanPreview result on GitHub pull request.
An action that comments PipeCD's PlanPreview result on GitHub pull request.

actions-plan-preview An action that comments PipeCD's PlanPreview result on GitHub pull request. This action can be used for all application kinds: Ku

Apr 6, 2022
A static code analyzer for annotated TODO comments
A static code analyzer for annotated TODO comments

todocheck todocheck is a static code analyzer for annotated TODO comments. It let's you create actionable TODOs by annotating them with issues from an

Dec 7, 2022
Kstone is an etcd management platform, providing cluster management, monitoring, backup, inspection, data migration, visual viewing of etcd data, and intelligent diagnosis.
Kstone is an etcd management platform, providing cluster management, monitoring, backup, inspection, data migration, visual viewing of etcd data, and intelligent diagnosis.

Kstone 中文 Kstone is an etcd management platform, providing cluster management, monitoring, backup, inspection, data migration, visual viewing of etcd

Dec 27, 2022
Dec 28, 2022
🙌 Bulk-upload GitHub Issues
🙌 Bulk-upload GitHub Issues

?? Bulk-upload GitHub Issues

Jul 23, 2021
Small gh extension that suggests issues to work on in a given GitHub repository

gh contribute being a gh extension for finding issues to help with in a GitHub repository. This extension suggests an issue in a given repository to w

Dec 24, 2022
This github action find the Issues linked in a Pull Request.

Linked Issue (Github Action) This action find the Issues linked in a Pull Request. It parses the HTML of the PR page to find the linked issues. Inputs

Jun 30, 2022
A command line utility for labeling GitHub issues and pull requests

A command line utility for labeling GitHub issues and pull requests

Jan 8, 2023