{"id":15395136,"url":"https://github.com/orhun/god","last_synced_at":"2025-04-16T00:01:54.533Z","repository":{"id":57613827,"uuid":"189101337","full_name":"orhun/god","owner":"orhun","description":"Linux utility for simplifying the Git usage.","archived":false,"fork":false,"pushed_at":"2020-11-22T20:06:56.000Z","size":86,"stargazers_count":26,"open_issues_count":0,"forks_count":4,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-29T03:06:09.807Z","etag":null,"topics":["git","git-commands","git-tools","linux-utility"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/orhun.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}},"created_at":"2019-05-28T20:49:51.000Z","updated_at":"2024-08-12T19:49:24.000Z","dependencies_parsed_at":"2022-09-11T01:00:43.706Z","dependency_job_id":null,"html_url":"https://github.com/orhun/god","commit_stats":null,"previous_names":["keylo99/god"],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orhun%2Fgod","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orhun%2Fgod/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orhun%2Fgod/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/orhun%2Fgod/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/orhun","download_url":"https://codeload.github.com/orhun/god/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249173071,"owners_count":21224483,"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":["git","git-commands","git-tools","linux-utility"],"created_at":"2024-10-01T15:26:03.216Z","updated_at":"2025-04-16T00:01:54.476Z","avatar_url":"https://github.com/orhun.png","language":"Go","readme":"# god [![Release](https://img.shields.io/github/release/orhun/God.svg?style=flat-square)](https://github.com/orhun/God/releases)\n[![Build Status](https://img.shields.io/travis/orhun/God.svg?style=flat-square)](https://travis-ci.org/orhun/God) [![Go Report Card](https://goreportcard.com/badge/github.com/orhun/god?style=flat-square)](https://goreportcard.com/report/github.com/orhun/god) [![License](https://img.shields.io/badge/license-GPLv3-blue.svg?style=flat-square\u0026color=red)](./LICENSE)\n\n### Linux utility for simplifying the Git usage.\n\n`god` parses the available Git commands from the retrieved list (`git help`) and turns them into an easy-to-type, one or two char format at the execution time.\nShortcuts of [commonly used git commands](https://github.com/joshnh/Git-Commands) are supported for simplifying the usage and speeding up typing even more.\n\n## Installation\n\n### AUR ([god](https://aur.archlinux.org/packages/god/))\n\n[![AUR](https://img.shields.io/aur/version/god.svg?style=flat-square)](https://aur.archlinux.org/packages/god/)\n\nInstallation can be made with a AUR helper tool like [Trizen](https://aur.archlinux.org/packages/trizen/) or [yay](https://aur.archlinux.org/packages/yay/).\n\n```\nyay -S god\n```\n\n### Manual Installation\n\nInstall the dependencies.\n\n```\ngo get -d ./...\n```\n\nSet the required Go environment variables if not set for the installation.\nSee [this link](https://stackoverflow.com/questions/48361893/how-to-set-go-environment-variables-globally) for setting environment variables globally.\n\n```\nexport GOPATH=~/go\nexport GOBIN=$GOPATH/bin\nexport PATH=$PATH:$GOBIN\n```\n\nAnd finally install the `god` package.\n\n```\ngo install\n```\n\n## Commands\n\n```\ngod \u003e ?\n+---------+-----------------------------+\n| COMMAND |         DESCRIPTION         |\n+---------+-----------------------------+\n| exit    | Exit shell                  |\n| git     | List available git commands |\n| sc      | List git shortcuts          |\n| alias   | Print shell or git aliases  |\n| help    | Show this help message      |\n| version | Show version information    |\n| clear   | Clear the terminal          |\n+---------+-----------------------------+\n```\n\n### **git**\n\n```\ngod \u003e git\n+---------+----------+\n| COMMAND |   GIT    |\n+---------+----------+\n| c       | clone    |\n| i       | init     |\n| a       | add      |\n| m       | mv       |\n| r       | reset    |\n| rm      | rm       |\n| b       | bisect   |\n| g       | grep     |\n| l       | log      |\n| s       | show     |\n| st      | status   |\n| bn      | branch   |\n| ck      | checkout |\n| cm      | commit   |\n| d       | diff     |\n| mr      | merge    |\n| ra      | rebase   |\n| t       | tag      |\n| f       | fetch    |\n| p       | pull     |\n| ps      | push     |\n| mt      | master   |\n| o       | origin   |\n+---------+----------+\n```\n\n_Example output of shortened git commands._\n\n### **sc**\n\n```\ngod \u003e sc   \n+----------+--------------------------------+\n| SHORTCUT |            COMMAND             |\n+----------+--------------------------------+\n| aa       | add -A                         |\n| cmt      | commit -m                      |\n| rmt      | remote -v                      |\n| rr       | rm -r                          |\n| ll       | log --graph --decorate --all   |\n| lo       | log --graph --decorate         |\n|          | --oneline --all                |\n| ls       | ls-files                       |\n+----------+--------------------------------+\n```\n\n_Git shortcuts._\n\n### Executing non-git commands\n\nOther terminal commands can be executed with adding a `'#'` character before the command. It's necessary for non-git commands because the `god` executes all other terminal inputs with `git`.\n\n```\ngod \u003e # ps\nPID   TTY    TIME     CMD\n23965 pts/2  00:00:00 bash\n30306 pts/2  00:00:00 go\n30361 pts/2  00:00:00 god\n30519 pts/2  00:00:00 ps\ngod \u003e # pwd\n/home/k3/god\n```\n\n## Demo\n\n![demo](https://user-images.githubusercontent.com/24392180/82380773-b2ad5380-9a31-11ea-9579-dab87be71972.gif)\n\n## Example\n\n```sh\ngod \u003e st\nOn branch master\n\tmodified:   README.md\nno changes added to commit (use \"git add\" and/or \"git commit -a\")\n\ngod \u003e a README.md\n\ngod \u003e cmt \"doc: Update README.md\"\n[master fba7e79] doc: Update README.md\n 1 file changed, 14 insertions(+)\n\ngod \u003e ps o mt\nTo https://github.com/orhun/god.git\n   45e8aba..fba7e79  master -\u003e master\n```\n\n## FAQ\n\nQ: _So it's a tool just to create some shortcuts for Git commands? Have you heard of [git aliases](https://git-scm.com/book/en/v2/Git-Basics-Git-Aliases)?_\n\nA: Yes.\n\nQ: Well, ok.\n\nA: k\n\n## Todo(s)\n\n* Support adding custom shortcuts.\n* Auto-complete commands.\n* Support custom prompt.\n\n## License\n\nGNU General Public License ([v3](https://www.gnu.org/licenses/gpl.txt))\n\n## Copyright\n\nCopyright (c) 2019-2020, [orhun](https://www.github.com/orhun)","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forhun%2Fgod","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Forhun%2Fgod","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Forhun%2Fgod/lists"}