Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/timwitzdam/gitsave
GitSave is a self-hosted and open-source application that backs up your Git repositories.
https://github.com/timwitzdam/gitsave
backup-tool git github gitlab self-hosted
Last synced: 25 days ago
JSON representation
GitSave is a self-hosted and open-source application that backs up your Git repositories.
- Host: GitHub
- URL: https://github.com/timwitzdam/gitsave
- Owner: TimWitzdam
- License: apache-2.0
- Created: 2024-08-21T09:20:50.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-09-25T18:35:45.000Z (about 1 month ago)
- Last Synced: 2024-09-30T03:03:07.298Z (about 1 month ago)
- Topics: backup-tool, git, github, gitlab, self-hosted
- Language: TypeScript
- Homepage:
- Size: 722 KB
- Stars: 69
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
GitSave
Easily back up your Git repositories on a schedule.
![GitSave 3 pages animation](https://i.imgur.com/i0SNNiL.gif)
https://github.com/user-attachments/assets/301b28ca-6b72-490a-8efb-217e39fb73d3
# Git happens...
So be prepared and keep backups of your own and favourite Git repositories.## 🛠️ Features
- Easy to use and responsive web interface
- Automated install using Docker
- Scheduling of backups
- Support for GitHub, GitLab and other Git platforms
- Pause/resume schedules
- View backup history## 🚀 Deploy GitSave for yourself
> [!WARNING]
> Make sure to change the env variable "JWT_SECRET" to something secure. [This website](https://jwtsecret.com/) may help you with that### Single run command
```bash
docker run -d --restart=always -p 3000:3000 -v gitsave:/app/data -v ./backups:/app/backups -e JWT_SECRET={YOUR_SECRET_HERE} --name GitSave timwitzdam/gitsave:latest
```
### Docker compose
1. Create .env file
```bash
# You can generate a JWT_SECRET here: https://jwtsecret.com/
JWT_SECRET="REPLACE_THIS"
```
2. Create `docker-compose.yml` file
```yaml
services:
gitsave:
image: timwitzdam/gitsave:latest
container_name: GitSave
restart: always
ports:
- "3000:3000"
volumes:
- gitsave:/app/data
- ./backups:/app/backups
environment:
- JWT_SECRET=${JWT_SECRET:?error}volumes:
gitsave:
```## 👀 Any questions, suggestions or problems?
You're welcome to contribute to GitSave or open an issue if you have any suggestions or find any problems.I'm also available via mail: [[email protected]](mailto:[email protected])