{"id":19014389,"url":"https://github.com/parrondo/git-simple","last_synced_at":"2026-05-10T02:17:51.677Z","repository":{"id":88357580,"uuid":"116871381","full_name":"parrondo/git-simple","owner":"parrondo","description":"Simple tools for your Git and Github workflow.","archived":false,"fork":false,"pushed_at":"2018-08-11T17:56:26.000Z","size":270,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-05T05:39:45.521Z","etag":null,"topics":["git","github"],"latest_commit_sha":null,"homepage":"http://github.com/parrondo/git-simple","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/parrondo.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":"2018-01-09T21:13:21.000Z","updated_at":"2018-08-11T17:21:31.000Z","dependencies_parsed_at":null,"dependency_job_id":"1fa82fdf-eb97-48c3-84cf-95cd9e4cec81","html_url":"https://github.com/parrondo/git-simple","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/parrondo/git-simple","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parrondo%2Fgit-simple","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parrondo%2Fgit-simple/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parrondo%2Fgit-simple/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parrondo%2Fgit-simple/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/parrondo","download_url":"https://codeload.github.com/parrondo/git-simple/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parrondo%2Fgit-simple/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264502293,"owners_count":23618571,"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","github"],"created_at":"2024-11-08T19:29:08.406Z","updated_at":"2026-05-10T02:17:51.626Z","avatar_url":"https://github.com/parrondo.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"![example of simplicity](./docs/images/README/hi_res_image1_small.jpg \"Example of simplicity (`Free Wheeling`)\")\n\nA collection of shell scripts for making **create**, **pulling**, **branching**, **merging**, **pushing** and **publishing** with Git fast and painless. Largely inspired by http://github.com/jamiew/git-friendly\n\nGit sometimes requires typing two or three commands just to execute something basic like fetching new code. git-simple adds a few new commands — `gremote`, `gpull`, `gpush`, `gbranch`, `gmerge` and `gpublish` which:\n\n* **gremote** Creates a remote Github repository from the current local directory;\n* **gmerge** Tries to merge a local branch into the current branch;\n* **gpush** Sends your local branch changes to the remote branch;\n* **gpull** Pulls remote changes using rebase \u0026 tries to rebundle;\n* **gbranch** Creates and tracks remote branches if they are available;\n* **gpublish** Publish your sphinx docs on Github gh-pages;\n\n*Less time fighting Git.*\n\n## Install\n\nRun this one-liner, which will download the scripts into `/usr/local/bin`:\n\n```bash\ncurl -sS https://raw.githubusercontent.com/parrondo/git-simple/master/install.sh | bash\n```\n\n**Note:** If you don’t have write access to `/usr/local/bin` you’ll need to run this using `sudo`.\n\nYou can change an installation directory:\n\n```bash\ncurl -sS https://raw.githubusercontent.com/parrondo/git-simple/master/install.sh | bash -s ~/friendly\n```\n\n## Manual Install\n\nCheckout the code:\n\n```bash\ngit clone git://github.com/parrondo/git-simple.git ~/dev/git-simple\n```\n\nThen update your `~/.bash_profile` or `~/.bashrc` to make git-simple available each time you launch a new terminal:\n\n```bash\nexport PATH=~/dev/git-simple:$PATH\n```\n\n## Usage\n\nYou now have new awesome commands: **gremote**, **gpull**, **gpush**, **gbranch**, **gmerge**, **gpublish**:\n\n![](./docs/images/README/Captura_de_pantalla_de_2018-01-11_19-19-06.jpg \"\")\n\nExample session:\n\n```bash\n$ gremote\n$ gpull\n$ gbranch awesomeness\n$ echo \"BUMP\" \u003e\u003e README\n$ git commit -a -m \"Righteous bump\"\n$ gbranch master\n$ gmerge awesomeness\n$ gpush\n$ gpublish\n```\n\n\n## Commands\n\n### `gremote`\n\n* Creates bare remote repository;\n* Initializes local repository \u0026 push to remote;\n\n```\ngremote\n```\n\n### `gpull`\n\n* Stash any local changes;\n* pull from the remote using rebase;\n* update submodules;\n* pop your stash;\n* run `bundle install`, `npm install`, `yarn install`, `bower install` or `composer install` if there are any changes in `Gemfile`, `package.json`, etc.\n\n```\ngpull\n```\n\n### `gpush`\n\n* Push your changes to the remote;\n* copy a compare URL, like [https://github.com/parrondo/git-simple/compare/e96033...5daed4](https://github.com/parrondo/git-simple/compare/e96033...5daed4), to your clipboard (works on Mac and Linux).\n\nAny extra arguments [arg] will be passed through to `git push`, for example `push -f`.\n\n```\ngpush [arg]\n```\n\n### `gbranch`\n\nSwitch branches or create new local branch if it doesn’t exist. Intelligently sets up remote branch tracking so you can just type `git pull` and not always `git pull origin newbranch`. If no argument specified, will list all local and remote branches. \n\n```\ngbranch [name]\n```\n\nSupports branch deletion with `-d` or `-D` keys:\n\n```\ngbranch -d [name]\ngbranch -D [name]\n```\n\nAnd switching to a previous branch with `-`:\n\n```\ngbranch -\n```\n\n### `gmerge`\n\n* Merge the specified branch into the current branch;\n* rebase first if the branch is local-only.\n\n```\ngmerge [name]\n```\n\n### `gpublish`\n\n* Publish sphinx docs from \u003cproject\u003e/docs master branch on github \u003cproject\u003e gh-pages branch;\n* It is asummed the documentation is build on \"source_doc_dir\" (default: \"docs/_build/html\");\n* Execute from project root folder, not from docs folder.\n\n```\ngpublish\n```\n\n## Configuration\n\nTo disable `bundle install`, `npm install`, `yarn install`, `bower install` or `composer install` for the `gpull` command use environmental variables:\n\n* `GIT_FRIENDLY_NO_BUNDLE`: disables `bundle install`\n* `GIT_FRIENDLY_NO_NPM`: disables `npm install`\n* `GIT_FRIENDLY_NO_YARN`: disables `yarn install`\n* `GIT_FRIENDLY_NO_BOWER`: disables `bower install`\n* `GIT_FRIENDLY_NO_COMPOSER`: disables `composer install`\n\nFor example, add this line to your `~/.bash_profile` to disable `bundle install`:\n\n```bash\nexport GIT_FRIENDLY_NO_BUNDLE=true\n```\n\n\n## Enhance Your Configs\n\nWe strongly recommend editing your global `~/.gitconfig` and adding features like ANSI color, command aliases (e.g. `git st` instead of `git status`), automatic remote tracking and more. Check out [this sample ~/.gitconfig](https://gist.github.com/668161) to get started.\n\nWe also recommend adding the current Git branch to your Terminal prompt (PS1) or you’ll quickly lose your place — here is [An informative and fancy bash prompt for Git users](https://github.com/magicmonty/bash-git-prompt).\n\n![pif](http://wow.sapegin.me/image/0Z1C1U00281j/pimped-prompt.jpg)\n\n\n## License\n\nMIT license.\n\nFork away, do whatever. Pull requests welcome.\n\n## Contributors\n\n* [Parrondo](https://github.com/parrondo) ([parrondo](https://github.com/parrondo))\n\n## References\n\n* `git-friendly`: http://github.com/jamiew/git-friendly ([jamiew](http://github.com/jamiew/git-friendly))\n* `Free Wheeling image`: https://www.ronmarks.com/catalogue/free-wheeling\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparrondo%2Fgit-simple","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fparrondo%2Fgit-simple","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparrondo%2Fgit-simple/lists"}