{"id":29377933,"url":"https://github.com/joeperpetua/git-i","last_synced_at":"2026-04-14T06:33:46.477Z","repository":{"id":302870112,"uuid":"1011308868","full_name":"joeperpetua/git-i","owner":"joeperpetua","description":"An interactive git wrapper to save time in your daily workflow.","archived":false,"fork":false,"pushed_at":"2025-07-04T13:09:00.000Z","size":34,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-11T18:44:50.598Z","etag":null,"topics":["cli","git","git-interactive","interactive","shell"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/@joeperpetua/git-i","language":"TypeScript","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/joeperpetua.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,"zenodo":null}},"created_at":"2025-06-30T16:04:32.000Z","updated_at":"2025-09-01T06:47:11.000Z","dependencies_parsed_at":"2025-07-04T14:51:27.871Z","dependency_job_id":"db9e7ec3-c16b-4ecf-8432-46c6d0fbd70e","html_url":"https://github.com/joeperpetua/git-i","commit_stats":null,"previous_names":["joeperpetua/git-i"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/joeperpetua/git-i","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joeperpetua%2Fgit-i","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joeperpetua%2Fgit-i/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joeperpetua%2Fgit-i/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joeperpetua%2Fgit-i/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/joeperpetua","download_url":"https://codeload.github.com/joeperpetua/git-i/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/joeperpetua%2Fgit-i/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31785677,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T02:24:21.117Z","status":"ssl_error","status_checked_at":"2026-04-14T02:24:20.627Z","response_time":153,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["cli","git","git-interactive","interactive","shell"],"created_at":"2025-07-10T00:09:40.245Z","updated_at":"2026-04-14T06:33:46.452Z","avatar_url":"https://github.com/joeperpetua.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# git-i\n\nA command-line tool that provides a simple, interactive interface for common Git operations.\n\n## Overview\n\n`git-i` is designed to streamline your daily Git workflow. Instead of remembering various Git commands and flags, you can use this tool to perform actions like adding, committing, and pushing changes through an easy-to-use interactive menu.\n\nIt's perfect for both beginners who are learning Git and experienced developers who want to speed up their workflow.\n\n## Installation\n\nTo install `git-i` globally on your system, run the following command:\n\n```bash\nnpm install -g @joeperpetua/git-i\n```\n\n## Usage\n\nYou can use `git-i` in two main ways:\n\n### 1. Interactive Mode\n\nRun the tool without any arguments to launch the main menu. This menu lists all available actions.\n\n```bash\ngit-i\n```\n\nYou will see a prompt like this:\n\n```\n? What would you like to do? › - Use arrow-keys. Return to submit.\n❯   Add files\n    Restore changes\n    Delete branches\n    Commit changes\n    Amend previous commit\n    Push to remote\n    Force push to remote\n    Exit\n```\n\nNavigate with arrow keys and press `Enter` to select an option.\n\n### 2. Direct Command Mode\n\nYou can also execute a specific command directly from your terminal.\n\n```bash\ngit-i \u003ccommand\u003e [options]\n```\n\n## Supported Commands\n\n### `add`\n\nInteractively select files to stage for the next commit. It displays a list of all new, modified, or deleted files in your working directory.\n\n**Usage:**\n```bash\ngit-i add\n```\n\nThis will show a checklist of files. Use the `\u003cspace\u003e` bar to select/deselect files and `\u003center\u003e` to stage them.\n\n### `restore`\n\nInteractively unstage files or discard changes in your working directory.\n\n**Usage:**\n```bash\ngit-i restore\n```\n\nThis command presents a list of both staged and unstaged changes.\n- Selecting **staged** changes will unstage them (equivalent to `git restore --staged \u003cfile\u003e`).\n- Selecting **unstaged** changes will discard them from your working directory (equivalent to `git restore \u003cfile\u003e`).\n\n### `branch delete`\n\nInteractively select and delete local branches.\n\n**Usage:**\n```bash\ngit-i branch delete\n```\n\nIt lists all local branches except for the current branch, allowing you to select multiple branches for deletion.\n\n### `commit`\n\nGuides you through creating a commit.\n\n**Usage:**\n```bash\ngit-i commit\n```\n\n**Options:**\n- `--amend`: Use this flag to amend the previous commit instead of creating a new one. The interactive menu provides a separate option for this.\n\nThe command will prompt you for a commit message (required) and an optional commit description.\n\n### `push`\n\nGuides you through pushing your changes to a remote repository.\n\n**Usage:**\n```bash\ngit-i push\n```\n\n**Options:**\n- `--force`: Use this flag to perform a force push. The interactive menu provides a separate option for this.\n\nThe command will prompt you to select a remote and a branch to push to, defaulting to the current branch.\n\n## Contributing\n\nContributions are welcome! If you have ideas for new features or find a bug, please open an issue or submit a pull request.\n\n## License\n\nThis project is licensed under the MIT License.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoeperpetua%2Fgit-i","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjoeperpetua%2Fgit-i","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjoeperpetua%2Fgit-i/lists"}