https://github.com/decodingchris/gitghost
Private version control for your Git ignored files.
https://github.com/decodingchris/gitghost
automation backup cli git github-cli gitignore open-source privacy private-repository python security tool version-control
Last synced: 7 days ago
JSON representation
Private version control for your Git ignored files.
- Host: GitHub
- URL: https://github.com/decodingchris/gitghost
- Owner: decodingchris
- Created: 2025-04-08T21:15:47.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2025-04-10T14:35:15.000Z (about 1 month ago)
- Last Synced: 2025-05-12T10:46:50.918Z (10 days ago)
- Topics: automation, backup, cli, git, github-cli, gitignore, open-source, privacy, private-repository, python, security, tool, version-control
- Language: Python
- Homepage: https://pypi.org/project/gitghost/
- Size: 21.5 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# GitGhost
Private version control for your Git ignored files.
## Why use GitGhost?
- **Keep sensitive files private:** Manage secrets, configs, or personal files outside your public repo.
- **Seamless Git integration:** Works alongside your existing Git workflow.
- **Simple commands:** Easily save, check status, or discard private changes.
- **Separate private repo:** Keeps your private data secure and versioned.
- **Cross-platform:** Designed for Linux, works on any system with Python 3.10+.## Requirements
- Python 3.10 or higher
- Git installed
- GitHub CLI (`gh`) is required for private repo automation## Installation
Install GitGhost directly from PyPI:
```bash
pip install gitghost
```## Commands
Initialize GitGhost in your project:
```bash
gitghost init
```Check status of private files:
```bash
gitghost status
```Save private changes:
```bash
gitghost save
```Discard private changes:
```bash
gitghost discard
```Get help and list all commands:
```bash
gitghost help
```## How it works
- Specify private files/folders in `.gitghostinclude` (which should also be in `.gitignore`).
- GitGhost manages a **separate private repository** for these files.
- `gitghost save` commits and pushes private changes.
- `gitghost status` shows private file changes.
- Keeps private data out of your public repo, but safely versioned.## License
This project is licensed under the **MIT License**. See the [LICENSE](https://opensource.org/licenses/MIT) file for details.