Uma ferramenta TUI Local-First que transforma o git numa máquina de 'snapshots' simples e segura.
Project description
GitSnap
GitSnap é uma aplicação gráfica (GUI) que transforma o git numa ferramenta de "snapshots" intuitiva e poderosa. Foi desenhada para simplificar o versionamento, focando-se na segurança e na facilidade de uso, tanto para projetos locais como para sincronização com o GitHub.
O Conceito: Snapshots
Em vez do ciclo add -> commit -> tag -> push, o GitSnap utiliza o conceito de Snapshot: uma "fotografia" completa do estado do seu projeto num determinado momento. Isto torna o processo de guardar e restaurar versões muito mais simples.
Funcionalidades Principais
Gestão de Snapshots Locais
- Criar Snapshot: Salve o estado atual de todos os ficheiros do seu projeto com uma única ação.
- Listar e Visualizar: Veja um histórico limpo de todos os snapshots, com mensagens, datas e autores.
- Restaurar Snapshot: Volte a um estado anterior de forma segura. O GitSnap cria um backup automático das suas alterações atuais antes de restaurar, garantindo que nada é perdido.
Sincronização com o GitHub
- Push de Snapshots: Envie um ou mais snapshots para um repositório remoto no GitHub para os manter seguros e partilhá-los com a sua equipa.
- Pull de Snapshots: Descarregue snapshots de um repositório do GitHub para o seu ambiente local, sincronizando o seu trabalho.
Importar e Exportar
- Exportar para Ficheiro: Exporte um ou vários snapshots para um único ficheiro
.bundle. Ideal para backups offline ou para partilhar versões de um projeto sem usar o GitHub. - Importar de Ficheiro: Importe snapshots a partir de um ficheiro
.bundle, restaurando o histórico noutra máquina.
Integração com o GitHub: Como usar Tokens
Para sincronizar snapshots com o GitHub, o GitSnap utiliza um Personal Access Token. Isto é mais seguro do que usar a sua palavra-passe.
Como gerar um Token no GitHub:
- Vá à sua conta do GitHub e aceda a Settings > Developer settings > Personal access tokens > Tokens (classic).
- Clique em Generate new token (e depois Generate new token (classic)).
- Note: Dê um nome ao token, como
gitsnap-token. - Expiration: Defina uma data de expiração (ex: 90 dias).
- Select scopes: Marque a caixa
repo. Isto dá permissões para aceder e modificar repositórios. - Clique em Generate token e copie o token gerado. Guarde-o num local seguro.
O GitSnap irá pedir este token na primeira vez que tentar fazer uma operação com o GitHub.
Instalação
A forma recomendada de instalar o git-snap é através do pipx:
pipx install git-snap
Para executar a aplicação, basta usar o comando:
git-snap
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file git_snap-1.1.0.tar.gz.
File metadata
- Download URL: git_snap-1.1.0.tar.gz
- Upload date:
- Size: 29.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a44f4936f4dba7608371be6465ed899a06ecdb4f570fbb960babb55035a0784b
|
|
| MD5 |
b9b606848c0fa948a2df74020c278d1c
|
|
| BLAKE2b-256 |
67d558492b1b9febb93347d3a2c05ddab9ac2d6a6bde10572865f4b7efd7a7ce
|
Provenance
The following attestation bundles were made for git_snap-1.1.0.tar.gz:
Publisher:
publish.yml on mefrraz/git-snap
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
git_snap-1.1.0.tar.gz -
Subject digest:
a44f4936f4dba7608371be6465ed899a06ecdb4f570fbb960babb55035a0784b - Sigstore transparency entry: 702419747
- Sigstore integration time:
-
Permalink:
mefrraz/git-snap@bdf3f36a65fc18083d02fa900f5b73b321aefa76 -
Branch / Tag:
refs/tags/v1.1 - Owner: https://github.com/mefrraz
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@bdf3f36a65fc18083d02fa900f5b73b321aefa76 -
Trigger Event:
release
-
Statement type:
File details
Details for the file git_snap-1.1.0-py3-none-any.whl.
File metadata
- Download URL: git_snap-1.1.0-py3-none-any.whl
- Upload date:
- Size: 33.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81f10ee9a09c864833f1fd4b4cb373d2f2aefcba58d86c655f285c44839e2a8b
|
|
| MD5 |
3b8aeda0f1e68db78cc207f811917638
|
|
| BLAKE2b-256 |
1230d6480b467c5baaa135c056e13989d0b22ceb2b9a8e1756bfbb030e46b865
|
Provenance
The following attestation bundles were made for git_snap-1.1.0-py3-none-any.whl:
Publisher:
publish.yml on mefrraz/git-snap
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
git_snap-1.1.0-py3-none-any.whl -
Subject digest:
81f10ee9a09c864833f1fd4b4cb373d2f2aefcba58d86c655f285c44839e2a8b - Sigstore transparency entry: 702419748
- Sigstore integration time:
-
Permalink:
mefrraz/git-snap@bdf3f36a65fc18083d02fa900f5b73b321aefa76 -
Branch / Tag:
refs/tags/v1.1 - Owner: https://github.com/mefrraz
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@bdf3f36a65fc18083d02fa900f5b73b321aefa76 -
Trigger Event:
release
-
Statement type: