Webダッシュボードから管理できる、PostgreSQL、MySQL、MongoDB、Redis、SQLite、Dockerボリュームなどのバックアップと復元を行うセルフホスト型ツール。
TimWitzdam/GitSave
スケジュールに沿ってGitリポジトリをバックアップする、保持数の上限とSMB共有に対応したセルフホスト型Webアプリです。
- スター
- 342
- フォーク
- 16
- 未解決の Issue
- 6
- 最終コミット
- 17 日前
これは何?
GitSaveは、Gitリポジトリを自動でバックアップするセルフホスト型アプリケーションです。Webインターフェースからスケジュールを設定すると、指定した間隔でリポジトリのコピーを取得するため、ホスティングプラットフォームとは別にローカルアーカイブを保持できます。
GitHub、GitLabをはじめとする各種Gitプラットフォームに対応し、独自の認証プロバイダーを設定できます。保持するバックアップ数を指定できるほか、スケジュールの一時停止と再開、バックアップ履歴の確認も可能です。バックアップ先にはローカルフォルダーまたはSMB共有を指定できます。
Dockerでのデプロイを想定しており、単一のdocker runコマンドまたはDocker Composeファイルを使って起動できます。実行前にJWTと暗号化用のシークレットを設定する必要があります。
主な機能
- 01バックアップスケジュールを管理するWebインターフェース
- 02一時停止と再開に対応した定期バックアップ
- 03保持するバックアップ数を設定可能
- 04GitHub、GitLabをはじめとする各種Gitプラットフォームに対応
- 05SMB共有へのバックアップに対応
- 06Dockerベースのインストール
ユースケース
- GitHubやGitLabでホストしている自分のリポジトリのオフラインコピーを保持する
- 削除や変更に備えて、お気に入りのオープンソースプロジェクトをアーカイブする
- ホームネットワーク上のファイル共有にリポジトリのバックアップを保存する
クイックスタート
- 1
このリポジトリをクローンする(READMEにコマンドの記載なし)
- 2
JWT_SECRET と ENCRYPTION_SECRET のペアを生成する
npm run secrets - 3
シークレットのプレースホルダーを置き換えて、Docker で GitSave を起動する
docker run -d --restart=always -p 3000:3000 -v gitsave:/app/data -v ./backups:/app/backups -e JWT_SECRET={YOUR_SECRET_HERE} -e ENCRYPTION_SECRET={YOUR_SECRET_HERE_32_CHARACTERS} -e DISABLE_AUTH=false --name GitSave timwitzdam/gitsave:latest
使う前に知っておきたいこと
- デプロイ前に安全なシークレットを生成して設定する必要があります。また、暗号化シークレットは正確に32文字である必要があります。
- セルフホスト型アプリのため、自分でサーバーまたは Docker ホストを実行・管理する必要があります。
収録されている特集
トピック
よくある質問
- GitSave とは?
- スケジュールに沿ってGitリポジトリをバックアップする、保持数の上限とSMB共有に対応したセルフホスト型Webアプリです。 GitSaveは、Gitリポジトリを自動でバックアップするセルフホスト型アプリケーションです。Webインターフェースからスケジュールを設定すると、指定した間隔でリポジトリのコピーを取得するため、ホスティングプラットフォームとは別にローカルアーカイブを保持できます。
- GitSave は無料で使えますか?ライセンスは?
- GitSave は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- GitSave は今もメンテナンスされていますか?
- 活発にメンテナンス中。GitSave の最終コミットは 2026年10月20日 です。
- GitSave は何に使えますか?
- GitHubやGitLabでホストしている自分のリポジトリのオフラインコピーを保持する 削除や変更に備えて、お気に入りのオープンソースプロジェクトをアーカイブする ホームネットワーク上のファイル共有にリポジトリのバックアップを保存する
- GitSave のインストール方法は?
- このリポジトリをクローンする(READMEにコマンドの記載なし) JWT_SECRET と ENCRYPTION_SECRET のペアを生成する: npm run secrets シークレットのプレースホルダーを置き換えて、Docker で GitSave を起動する: docker run -d --restart=always -p 3000:3000 -v gitsave:/app/data -v ./backups:/app/backups -e JWT_SECRET={YOUR_SECRET_HERE} -e ENCRYPTION_SECRET={YOUR_SECRET_HERE_32_CHARACTERS} -e DISABLE_AUTH=false --name GitSave timwitzdam/gitsave:latest
- GitSave はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/TimWitzdam/GitSave
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
リポジトリの設定、定期バックアップ、アーカイブの閲覧、復元をコマンドラインなしで行える、セルフホスト型のBorgBackup用Webインターフェースです。
GitHub、GitLab、Codeberg、Forgejoのリリースを監視し、メールやAppriseで通知するセルフホスト型アプリ。
クロスプラットフォーム対応の .NET 製 Git credential helper。GitHub、Azure DevOps、GitLab、Bitbucket への安全なサインインとトークン保存を担います。
GitHub、GitLab、Gitea、Forgejo、Codeberg、Bitbucketの通知をまとめて確認できるデスクトップメニューバーアプリ。
モバイルからのバックアップ、顔認識、検索に対応したセルフホスト型の写真・動画管理アプリ。Google Photosの代替として利用できます。