{"id":13431959,"url":"https://github.com/mapmeld/gitjk","last_synced_at":"2025-05-16T18:06:38.046Z","repository":{"id":17402356,"uuid":"20174993","full_name":"mapmeld/gitjk","owner":"mapmeld","description":"Undo what you just did in git","archived":false,"fork":false,"pushed_at":"2020-07-17T01:51:45.000Z","size":53,"stargazers_count":824,"open_issues_count":6,"forks_count":13,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-04-12T18:47:42.822Z","etag":null,"topics":["git","oops"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/gitjk","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mapmeld.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-05-26T05:26:04.000Z","updated_at":"2025-03-04T10:55:39.000Z","dependencies_parsed_at":"2022-08-28T12:01:09.372Z","dependency_job_id":null,"html_url":"https://github.com/mapmeld/gitjk","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapmeld%2Fgitjk","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapmeld%2Fgitjk/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapmeld%2Fgitjk/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapmeld%2Fgitjk/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mapmeld","download_url":"https://codeload.github.com/mapmeld/gitjk/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254388677,"owners_count":22063091,"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","oops"],"created_at":"2024-07-31T02:01:07.362Z","updated_at":"2025-05-16T18:06:38.023Z","avatar_url":"https://github.com/mapmeld.png","language":"JavaScript","readme":"# gitjk\n\n[![Greenkeeper badge](https://badges.greenkeeper.io/mapmeld/gitjk.svg)](https://greenkeeper.io/)\n\nIf you just ran a git command that you didn't mean to, this program will either undo it,\ntell you how to undo it, or tell you it's impossible to undo. Based on a joke I posted a while ago.\n\n## Examples\n\nAsking for undo-ing advice.\n\n    git init\n    gitjk\n\n    This created a .git folder in the current directory. You can remove it.\n    rm -rf .git\n\nAsking to fix it automatically\n\n    git add file.js\n    gitjk -f\n\n    This added file.js to the changes staged for commit. All changes to file.js will be removed from\n    staging for this commit, but remain saved in your file.\n    Running... git reset file.js\n    Completed\n\n## Coverage\n\n### Included:\n\n    add,\n    archive,\n    branch,\n    cat-file,\n    checkout,\n    clone,\n    commit,\n    diff,\n    fetch,\n    grep,\n    init,\n    log,\n    ls-tree,\n    merge,\n    mv,\n    pull,\n    push,\n    remote,\n    revert,\n    rm,\n    show,\n    stash,\n    status\n\nBasic [aliases](http://git-scm.com/book/en/Git-Basics-Tips-and-Tricks#Git-Aliases) are also supported (e.g. `git cm` for `git commit`).\n\n### Not included:\n\n    bisect,\n    fsck,\n    gc,\n    prune,\n    rebase,\n    reset,\n    tag\n\nCompound aliases are not supported (e.g. `git ac` for `git add -A \u0026\u0026 git commit`).\n\n## Install\n\nYou need to run npm install and alias to fully install.\nThe module is named gitjk but you need to set up an alias to pipe the most recent commands into the program.\n\n### OSX or BSD\n\n    npm install -g gitjk\n    alias gitjk=\"history 10 | tail -r | gitjk_cmd\"\n\n### Ubuntu / other Linux\n\n    npm install -g gitjk\n    alias gitjk=\"history 10 | tac | gitjk_cmd\"\n\n### Different Terminals\n\nIf you are using `fish`, place this is in `~/.config/fish.config` (from [lunixbochs](https://news.ycombinator.com/user?id=lunixbochs) on Hacker News):\n    \n    alias jk=\"history | head -n+10 | tail -r | gitjk_cmd\"\n\nIf you are using `iTerm`\n\n    alias gitjk=\"history | tail -r -n 10 | gitjk_cmd\"\n\n## License\n\nAvailable under GPLv3 license\n","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapmeld%2Fgitjk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmapmeld%2Fgitjk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapmeld%2Fgitjk/lists"}