{"id":20660838,"url":"https://github.com/lxl66566/git-simple-encrypt","last_synced_at":"2025-04-19T15:11:31.294Z","repository":{"id":236094702,"uuid":"791900852","full_name":"lxl66566/git-simple-encrypt","owner":"lxl66566","description":"An extremely simple-to-use, user-friendly one-password git encrypt solution.","archived":false,"fork":false,"pushed_at":"2025-04-02T02:24:36.000Z","size":157,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-02T03:27:00.123Z","etag":null,"topics":["encryption","encryption-decryption","git"],"latest_commit_sha":null,"homepage":"https://crates.io/crates/git-simple-encrypt","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lxl66566.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-25T15:34:07.000Z","updated_at":"2025-04-02T02:24:34.000Z","dependencies_parsed_at":"2025-02-02T03:25:20.159Z","dependency_job_id":"c9dc4f99-f064-4c5c-8641-1ec3ffcd8b3f","html_url":"https://github.com/lxl66566/git-simple-encrypt","commit_stats":null,"previous_names":["lxl66566/simple-git-encrypt"],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lxl66566%2Fgit-simple-encrypt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lxl66566%2Fgit-simple-encrypt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lxl66566%2Fgit-simple-encrypt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lxl66566%2Fgit-simple-encrypt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lxl66566","download_url":"https://codeload.github.com/lxl66566/git-simple-encrypt/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249723444,"owners_count":21316027,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["encryption","encryption-decryption","git"],"created_at":"2024-11-16T19:06:14.041Z","updated_at":"2025-04-19T15:11:31.255Z","avatar_url":"https://github.com/lxl66566.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# git-simple-encrypt\n\nEnglish | [简体中文](./docs/README_zh-CN.md)\n\nA **very simple and easy to use** git encryption tool that encrypts/decrypts your git repositories on any device with one **single password**. Supports partial file encryption, incremental encryption.\n\n- Why not use [`git-crypt`](https://github.com/AGWA/git-crypt)?\n  - **This project is more focused on ease of use than security.** Single-password symmetric encryption is my bottom line.\n\n\u003e [!WARNING]  \n\u003e **This repository does not make any guarantees about encryption security and backward compatibility.** (Please use the same major version)\n\n## Installation\n\nThere are several different ways to install it, you can choose **any** of them.\n\n- Download the file from [Releases](https://github.com/lxl66566/git-simple-encrypt/releases), unzip and place it in `C:\\Windows\\System32` (If you're using Windows) or any `Path` directory.\n- Using [bpm](https://github.com/lxl66566/bpm):\n  ```sh\n  bpm i git-simple-encrypt -b git-se -q\n  ```\n- Using [scoop](https://scoop.sh/):\n  ```sh\n  scoop bucket add absx https://github.com/absxsfriends/scoop-bucket\n  scoop install git-simple-encrypt\n  ```\n- Using cargo:\n  ```sh\n  cargo +nightly install git-simple-encrypt\n  ```\n  or [cargo-binstall](https://github.com/cargo-bins/cargo-binstall):\n  ```sh\n  cargo binstall git-simple-encrypt\n  ```\n\n## Usage\n\n```sh\ngit-se p                    # Set the password.\ngit-se add file.txt         # Add `file.txt` to the need-to-be-encrypted list.\ngit-se add mydir            # Add `mydir` to the need-to-be-encrypted list.\ngit-se e                    # Encrypt files in list in the current repository.\ngit-se d                    # Decrypt all files with extension `.enc`, `.zst.enc`.\ngit-se d 'src/*'            # Decrypt all encrypted files in `src` folder.\n```\n\nType `git-se -h` and `git-se [subcommand] -h` to get more information.\n\n## Caution\n\n- `git add -A` is automatically executed when encrypting, so make sure that `.gitignore` is handled properly.\n- Do not add files with `.zst`, `.enc` suffixes and folders containing them to the encrypted list.\n- To delete file/dir from encrypt list, edit `git_simple_encrypt.toml`.\n- encrypt/decrypt will keep the file metadata unchanged (unix permission and timestamp).\n\n## Algorithm\n\n```mermaid\ngraph TD;\n    A[Key: 123] -- SHA3_224 --\u003e 602bdc204140db016bee5374895e5568ce422fabe17e064061d80097 -- CUT --\u003e 602bdc204140db016bee5374895e5568 --cipher--\u003e Aes128GcmSiv  -- output--\u003e 14a7dd2666afd854788c80f5518fea892491f23e72798d2fbc67bfc6259610d6f4\n    B[Text: '6' * 60] --zstd--\u003e 28b52ffd006045000010363601003f0116 --content--\u003e Aes128GcmSiv\n    CONST --NONCE--\u003e Aes128GcmSiv\n```\n\n- If zstd compression has the opposite effect, skip compression.\n- Decrypt all files with extension `.enc`, `.zst.enc`.\n\n## Develop\n\n- for testing, please use `cargo test -- --test-threads=1`\n\n## TODO\n\n- [ ] zstd effect checking\n- [x] partial decrypt\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flxl66566%2Fgit-simple-encrypt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flxl66566%2Fgit-simple-encrypt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flxl66566%2Fgit-simple-encrypt/lists"}