Code Monkey home page Code Monkey logo

git-whistles's Introduction

git whistles Gem Version

This repository is about sharing helper scripts for the Git version control system.

Install with:

gem install git-whistles

Commands available:

git chop [branch1, ...] - Deletes the local and origin copy of a branch. Useful to close feature branches once a feature is completed. It also accepts multiple branches separated by spaces

git pr [--from your-branch] [--to target-branch] - Open your browser at a Github pull-request page for the specified branch (defaults to the current head).

git explore [-r REF] [-p PATH] - Opens the remote origin interface on the given reference and path. Reference defaults to current branch and path to root

git ff-all-branches [-f] [-p] [-v] - Fast-forward all local tracking branches to their remote counterpart (where possible). Very useful on big projects.

git jira-branch <issue-id> - Creates a branch name suggestion from the specified JIRA issue ID. It also writes the branch name as a comment on the issue and allows to transition the issue.

git jira-pr [--from your-branch] [--to target-branch] - Open your browser at a Github pull-request page for the specified branch (defaults to the current head). If you're using JIRA and your branch has a issue id in its name, populates your pull request with that issue details, else it just creates an empty Pull Request from the current HEAD.

git latest-pushes [-n NR_RESULTS] [-p PATTERN] - Show latest pushed branches to origin. Defaults to 20 results. Pattern is appended to refs/remotes/origin/ so include the team or project name to filter results.

git list-branches [-l] [-r] [-i integration-branch] - Colourful listing of all local or origin branches, and their distance to an integration branch (master by default).

git merge-po <ancestor> <left> <right> - Merge engine for GetText PO files.

git outstanding-features [-f from-branch] [-t to-branch] [--oneline] - List the pull requests merged in [to-branch] but not in [from-branch]. Useful to prepare a list of stuff you're going to deploy. Defaults to listing what's on origin/master but not on origin/production. By default lists one feature per line, if --oneline or -o is specified features will be separated by spaces instead.

git pivotal-branch <story-id> - Creates a branch name suggestion from the specified Pivotal Tracker story ID. It also starts the story and writes the branch name as a comment.

git pivotal-open <story-id> - Opens the Pivotal Tracker story page for the current branch, from the specified Pivotal Tracker story ID or it is inferred from the branch name if not supplied

git pivotal-pr [--from your-branch] [--to target-branch] - Open your browser at a Github pull-request page for the specified branch (defaults to the current head). If you're using Pivotal Tracker and your branch has a story number in its name, populates your pull request with story details, else it just creates an empty Pull Request from the current HEAD.

git select <story-id> [-p PREFIX] [-r REMOTE_REF] - Checkout a local branch with the matching number. If not found, lists remote branches. With -p you can add a prefix to your local branch name. The -r options allows to checkout a branch in remote if you don't have a local branch with that number.

git stash-and-checkout [branch] - Stash and checkout another branch.

git youtrack-branch <ticket-id> - Creates a branch name suggestion from the specified Youtrack ticket ID.

More details on some of the commands

merge-po

git merge-po <ancestor> <left> <right>

For those using gettext for I18n, a must-have: this custom merge driver will handle most merge/conflicts issues when a PO file was edited by different committers.

You don't have to call this directly.

Add this to your .git/config:

[merge "pofile"]
  name = Gettext merge driver
  driver = git merge-po %O %A %B

Add this to .gitattributes:

*.po   merge=pofile
*.pot  merge=pofile

Or, if you want to make this setting global:

Create a user global file ~/.gitattributes and fill it with:

*.po   merge=pofile
*.pot  merge=pofile

Add this to your user global ~/.gitconfig:

[core]
  attributesfile = ~/.gitattributes
[merge "pofile"]
  name = Gettext merge driver
  driver = git merge-po %O %A %B

JIRA

All JIRA commands require a JIRA username, API token and site. Please use the following commands to set it up:

$ git config [--global] jira.username <username>
$ git config [--global] jira.token <token>
$ git config [--global] jira.site <https://mydomain.atlassian.net>

Pivotal

All pivotal commands require a Pivotal Tracker token. The token needs to be generated on the Pivotal Tracker UI. The token can then be set locally via the following command:

$ git config [--global] pivotal-tracker.token <token>

Youtrack

All Youtrack commands require a Youtrack username, password and url. Please use the following commands to set it up:

$ git config [--global] youtrack.username <username>
$ git config [--global] youtrack.password <password>
$ git config [--global] youtrack.url <https://your_youtrack_url.com>

License

Released on the MIT license terms.

git-whistles's People

Contributors

artoria2e5 avatar davidslv avatar jeffreylo avatar jphastings avatar kraatob avatar martyphee avatar mezis avatar mottalrd avatar pedrocunha avatar tadejm avatar vgochev avatar vwal avatar zdraganov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

git-whistles's Issues

breaks when trying to transition an issue to new state

Finding your JIRA Issue.
Found issue XX-989 in 'Xtra Awsome'
The suggested branch name is: XX-989/urgency-based-queueing-system
    Press ENTER if you agree
 or Write any other name and press ENTER
 or Press CTRL-D to cancel
  >
Would you like to transition the issue?
4 - Start Progress
2 - Close Issue
Type the number or enter to continue
  > 4
Switched to a new branch 'XX-989/urgency-based-queueing-system'
/Users/faheem/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/jira-ruby-1.0.0/lib/jira/request_client.rb:16:in `request': Bad Request (JIRA::HTTPError)
	from /Users/faheem/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/jira-ruby-1.0.0/lib/jira/client.rb:208:in `request'
	from /Users/faheem/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/jira-ruby-1.0.0/lib/jira/client.rb:201:in `put'
	from /Users/faheem/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/jira-ruby-1.0.0/lib/jira/base.rb:351:in `save!'
	from /Users/faheem/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/git-whistles-1.3/bin/git-jira-branch:75:in `main'
	from /Users/faheem/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/git-whistles-1.3/lib/git-whistles/app.rb:23:in `run!'
	from /Users/faheem/.rbenv/versions/2.3.3/lib/ruby/gems/2.3.0/gems/git-whistles-1.3/bin/git-jira-branch:130:in `<top (required)>'
	from /Users/faheem/.rbenv/versions/2.3.3/bin/git-jira-branch:22:in `load'
	from /Users/faheem/.rbenv/versions/2.3.3/bin/git-jira-branch:22:in `<main>'
➜  git:(XX-989/urgency-based-queueing-system) ✗

The issue didn't transition to In Progress.

Read PT token from ENV

Many of us have .gitconfig committed and pushed in the dotfiles public repo on GitHub.

Myself I store sensitive keys in a .private file which is ignored by git that get's sources when the env loads.

In order to prevent PT token leaking my suggestion is to check if PIVOTAL_TOKEN env variable exists and take that as a precedence over git config pivotal-tracker.token.

Thoughts?

On Ubuntu 16.04 it fails to install...

When installing it does this:

gem install git-whistles

Fetching: git-whistles-1.1.3.gem (100%)

/var/lib/gems/2.3.0/gems/git-whistles-1.1.3/bin/git-chop maybe gem pristine git-whistles will fix it?

/var/lib/gems/2.3.0/gems/git-whistles-1.1.3/bin/git-list-branches maybe gem pristine git-whistles will fix it?
/var/lib/gems/2.3.0/gems/git-whistles-1.1.3/bin/git-merge-po maybe gem pristine git-whistles will fix it?

/var/lib/gems/2.3.0/gems/git-whistles-1.1.3/bin/git-stash-and-checkout maybe gem pristine git-whistles will fix it?

Successfully installed git-whistles-1.1.3

Parsing documentation for git-whistles-1.1.3

Installing ri documentation for git-whistles-1.1.3

Done installing documentation for git-whistles after 0 seconds

1 gem installed`

the result is 4 links wrong, see:

ls -l /var/lib/gems/2.3.0/gems/git-whistles-1.1.3/bin/

lrwxrwxrwx 1 root root 56 set 27 10:30 git-chop -> /var/lib/gems/2.3.0/gems/git-whistles-1.1.3/git-whistles
-rwxr-xr-x 1 root root 2056 set 27 10:30 git-explore
-rwxr-xr-x 1 root root 3435 set 27 10:30 git-ff-all-branches
-rwxr-xr-x 1 root root 2928 set 27 10:30 git-jira-branch
-rwxr-xr-x 1 root root 4563 set 27 10:30 git-jira-pr
-rwxr-xr-x 1 root root 1505 set 27 10:30 git-latest-pushes
lrwxrwxrwx 1 root root 56 set 27 10:30 git-list-branches -> /var/lib/gems/2.3.0/gems/git-whistles-1.1.3/git-whistles
lrwxrwxrwx 1 root root 56 set 27 10:30 git-merge-po -> /var/lib/gems/2.3.0/gems/git-whistles-1.1.3/git-whistles
-rwxr-xr-x 1 root root 1382 set 27 10:30 git-outstanding-features
-rwxr-xr-x 1 root root 2782 set 27 10:30 git-pivotal-branch
-rwxr-xr-x 1 root root 1923 set 27 10:30 git-pivotal-open
-rwxr-xr-x 1 root root 4909 set 27 10:30 git-pivotal-pr
-rwxr-xr-x 1 root root 3115 set 27 10:30 git-select
lrwxrwxrwx 1 root root 56 set 27 10:30 git-stash-and-checkout -> /var/lib/gems/2.3.0/gems/git-whistles-1.1.3/git-whistles
-rwxr-xr-x 1 root root 255 set 27 10:30 git-whistles

since /var/lib/gems/2.3.0/gems/git-whistles-1.1.3/git-whistles does not exist...

running git (after the suggested .gitconfig addinng) does this:

git merge-po
git: 'merge-po' is not a git command. See 'git --help'.

BTW running gem pristine git-whistles does not fix it...

Don't store jira password in plaintext

Hey guys, I was wondering if there is a way to not store the Jira password in plaintext. I haven't done any research yet, but maybe you guys have thought about something?

Pull request breaking for empty description

When we run git jira-pr it breaks for branches with empty description.

Envirnoment:

  • rbenv 1.0.0-21-g9fdce5d
  • ruby 2.1.7
  • git-whitsles 1.1.0
/Users/zhivko/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/git-whistles-1.1.0/bin/git-jira-pr:125:in `add_jira_info': undefined method `split' for nil:NilClass (NoMethodError)
        from /Users/zhivko/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/git-whistles-1.1.0/bin/git-jira-pr:56:in `main'
        from /Users/zhivko/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/git-whistles-1.1.0/lib/git-whistles/app.rb:23:in `run!'
        from /Users/zhivko/.rbenv/versions/2.1.7/lib/ruby/gems/2.1.0/gems/git-whistles-1.1.0/bin/git-jira-pr:164:in `<top (required)>'
        from /Users/zhivko/.rbenv/versions/2.1.7/bin/git-jira-pr:23:in `load'
        from /Users/zhivko/.rbenv/versions/2.1.7/bin/git-jira-pr:23:in `<main>'

I will spend time on PR soon.

License missing from gemspec

Some companies will only use gems with a certain license.
The canonical and easy way to check is via the gemspec
via e.g.

spec.license = 'MIT'
# or
spec.licenses = ['MIT', 'GPL-2']

Bundler now generates gems with a default 'MIT' license. There is even a License Finder
to help companies ensure all gems they use meet their licensing needs. This tool depends on license information being available in the gemspec.
Including a license in your gemspec is a good practice, in any case.

If you need help choosing a license, github has created a license picker tool

How did I find you?

I'm using a script to collect stats on gems, originally looking for download data, but decided to collect licenses too,
and make issues for gemspecs not specifying a license as a public service :)
So far it's going pretty well.
I've written a blog post about it

problems with installing git-whistles

I had problems installing git-whistles, and when I try to merge a branch with PO conflicts, I get :

/usr/local/bin/git-merge-po:23:in load': cannot load such file -- /var/lib/gems/1.9.1/gems/git-whistles-0.12.0/bin/git-merge-po (LoadError) from /usr/local/bin/git-merge-po:23:in

'

Here is the output of the installation process :

sudo gem install git-whistles

Building native extensions. This could take a while...
Fetching: nokogiri-happymapper-0.5.9.gem (100%)
Fetching: builder-3.2.2.gem (100%)
Fetching: safe_yaml-1.0.4.gem (100%)
Fetching: crack-0.4.2.gem (100%)
Fetching: unf_ext-0.0.7.1.gem (100%)
Building native extensions. This could take a while...
Fetching: unf-0.1.4.gem (100%)
Fetching: domain_name-0.5.24.gem (100%)
Fetching: http-cookie-1.0.2.gem (100%)
Fetching: mime-types-2.6.1.gem (100%)
Fetching: netrc-0.10.3.gem (100%)
Fetching: rest-client-1.8.0.gem (100%)
Fetching: pivotal-tracker-0.5.13.gem (100%)
Fetching: tins-1.6.0.gem (100%)
Fetching: term-ansicolor-1.3.2.gem (100%)
Fetching: git-whistles-0.12.0.gem (100%)
Successfully installed nokogiri-1.6.6.2
Successfully installed nokogiri-happymapper-0.5.9
Successfully installed builder-3.2.2
Successfully installed safe_yaml-1.0.4
Successfully installed crack-0.4.2
Successfully installed unf_ext-0.0.7.1
Successfully installed unf-0.1.4
Successfully installed domain_name-0.5.24
Successfully installed http-cookie-1.0.2
Successfully installed mime-types-2.6.1
Successfully installed netrc-0.10.3
Successfully installed rest-client-1.8.0
Successfully installed pivotal-tracker-0.5.13
Successfully installed tins-1.6.0
Successfully installed term-ansicolor-1.3.2
Successfully installed git-whistles-0.12.0
16 gems installed
Installing ri documentation for nokogiri-1.6.6.2...
Installing ri documentation for nokogiri-happymapper-0.5.9...
Installing ri documentation for builder-3.2.2...
Installing ri documentation for safe_yaml-1.0.4...
Installing ri documentation for crack-0.4.2...
Installing ri documentation for unf_ext-0.0.7.1...
Installing ri documentation for unf-0.1.4...
Installing ri documentation for domain_name-0.5.24...
Installing ri documentation for http-cookie-1.0.2...
Installing ri documentation for mime-types-2.6.1...
Installing ri documentation for netrc-0.10.3...
Installing ri documentation for rest-client-1.8.0...
Installing ri documentation for pivotal-tracker-0.5.13...
Installing ri documentation for tins-1.6.0...

RDoc::Parser::Ruby failure around line 4 of
lib/tins/method_description.rb

Before reporting this, could you check that the file you're documenting
has proper syntax:

/usr/bin/ruby1.9.1 -c lib/tins/method_description.rb

RDoc is not a full Ruby parser and will fail when fed invalid ruby programs.

The internal error was:

(RDoc::Error) unknown type of %string "i"

ERROR: While generating documentation for tins-1.6.0
... MESSAGE: unknown type of %string "i"
... RDOC args: --ri --op /var/lib/gems/1.9.1/doc/tins-1.6.0/ri --title Tins - Useful stuff. --main README.md lib README.md lib/dslkit.rb lib/dslkit/polite.rb lib/dslkit/rude.rb lib/spruz.rb lib/tins.rb lib/tins/alias.rb lib/tins/annotate.rb lib/tins/ask_and_send.rb lib/tins/attempt.rb lib/tins/bijection.rb lib/tins/case_predicate.rb lib/tins/complete.rb lib/tins/concern.rb lib/tins/count_by.rb lib/tins/date_dummy.rb lib/tins/date_time_dummy.rb lib/tins/deep_const_get.rb lib/tins/deep_dup.rb lib/tins/dslkit.rb lib/tins/extract_last_argument_options.rb lib/tins/file_binary.rb lib/tins/find.rb lib/tins/generator.rb lib/tins/go.rb lib/tins/hash_symbolize_keys_recursive.rb lib/tins/hash_union.rb lib/tins/if_predicate.rb lib/tins/implement.rb lib/tins/limited.rb lib/tins/lines_file.rb lib/tins/memoize.rb lib/tins/method_description.rb lib/tins/minimize.rb lib/tins/module_group.rb lib/tins/named_set.rb lib/tins/null.rb lib/tins/once.rb lib/tins/p.rb lib/tins/partial_application.rb lib/tins/proc_compose.rb lib/tins/proc_prelude.rb lib/tins/range_plus.rb lib/tins/require_maybe.rb lib/tins/responding.rb lib/tins/rotate.rb lib/tins/secure_write.rb lib/tins/sexy_singleton.rb lib/tins/shuffle.rb lib/tins/string_byte_order_mark.rb lib/tins/string_camelize.rb lib/tins/string_underscore.rb lib/tins/string_version.rb lib/tins/subhash.rb lib/tins/terminal.rb lib/tins/thread_local.rb lib/tins/time_dummy.rb lib/tins/to.rb lib/tins/to_proc.rb lib/tins/token.rb lib/tins/uniq_by.rb lib/tins/version.rb lib/tins/write.rb lib/tins/xt.rb lib/tins/xt/annotate.rb lib/tins/xt/ask_and_send.rb lib/tins/xt/attempt.rb lib/tins/xt/blank.rb lib/tins/xt/case_predicate.rb lib/tins/xt/complete.rb lib/tins/xt/concern.rb lib/tins/xt/count_by.rb lib/tins/xt/date_dummy.rb lib/tins/xt/date_time_dummy.rb lib/tins/xt/deep_const_get.rb lib/tins/xt/deep_dup.rb lib/tins/xt/dslkit.rb lib/tins/xt/extract_last_argument_options.rb lib/tins/xt/file_binary.rb lib/tins/xt/full.rb lib/tins/xt/hash_symbolize_keys_recursive.rb lib/tins/xt/hash_union.rb lib/tins/xt/if_predicate.rb lib/tins/xt/implement.rb lib/tins/xt/irb.rb lib/tins/xt/method_description.rb lib/tins/xt/named.rb lib/tins/xt/null.rb lib/tins/xt/p.rb lib/tins/xt/partial_application.rb lib/tins/xt/proc_compose.rb lib/tins/xt/proc_prelude.rb lib/tins/xt/range_plus.rb lib/tins/xt/require_maybe.rb lib/tins/xt/responding.rb lib/tins/xt/rotate.rb lib/tins/xt/secure_write.rb lib/tins/xt/sexy_singleton.rb lib/tins/xt/shuffle.rb lib/tins/xt/string.rb lib/tins/xt/string_byte_order_mark.rb lib/tins/xt/string_camelize.rb lib/tins/xt/string_underscore.rb lib/tins/xt/string_version.rb lib/tins/xt/subhash.rb lib/tins/xt/symbol_to_proc.rb lib/tins/xt/time_dummy.rb lib/tins/xt/time_freezer.rb lib/tins/xt/to.rb lib/tins/xt/uniq_by.rb lib/tins/xt/write.rb --title tins-1.6.0 Documentation --quiet

Gem does not build on Rubygems 2.5.X with certain versions of Ruby

If I try to install git-whistles under ruby 2.3.0 (pristine machine) I get the following error:

ERROR:  While executing gem ... (Gem::Package::PathError)`

@martyphee does also get the same problem when installing the gem under 2.2.3. I can't replicate that.

After some investigation looks like the culprit is the latest RubyGems version 2.5. This is the offending PR: rubygems/rubygems#1209 which broke the support of symlinks in the gem files.

For now it doesn't seem a problem that be solved in git-whistles and the solution is to downgrade ruby gems. I've tried with 2.4.8 and works fine.

Exception when bad Pivotal Tracker token is configured

When a pivotal-tracker config item is set but not the correct API token, git-pull-request fails with an error:

$ git pull-request
Finding your project and story[...]/gems/rest-client-1.6.7/lib/restclient/abstract_response.rb:48:in `return!': 401 Unauthorized (RestClient::Unauthorized)
    from [...]/gems/rest-client-1.6.7/lib/restclient/request.rb:230:in `process_result'
    from [...]/gems/rest-client-1.6.7/lib/restclient/request.rb:178:in `transmit'
    from [...]/lib/ruby/1.8/net/http.rb:543:in `start'
    from [...]/gems/rest-client-1.6.7/lib/restclient/request.rb:172:in `transmit'
    from [...]/gems/rest-client-1.6.7/lib/restclient/request.rb:64:in `execute'
    from [...]/gems/rest-client-1.6.7/lib/restclient/request.rb:33:in `execute'
    from [...]/gems/rest-client-1.6.7/lib/restclient/resource.rb:54:in `get'
    from [...]/gems/pivotal-tracker-0.5.12/lib/pivotal-tracker/project.rb:7:in `all'
    from [...]/gems/git-whistles-0.9.1/bin/git-pull-request:127:in `add_pivotal_info'
    from [...]/gems/git-whistles-0.9.1/bin/git-pull-request:54:in `main'
    from [...]/gems/git-whistles-0.9.1/lib/git-whistles/app.rb:23:in `run!'
    from [...]/gems/git-whistles-0.9.1/bin/git-pull-request:162
    from [...]/bin/git-pull-request:23:in `load'
    from [...]/bin/git-pull-request:23

Should probably show a human-readable error message. :)

git-merge-po hard to understand

I'm trying to modify git-merge-po so that it accepts an option like -Xours. However, I have a hard time understanding how it works, not least because the documentation of the gettext tools is rather thin and I don't know what really happens when I run a command. So it would be very nice if you could clarify a bit how and why git-merge-po works.

In particular, I encountered one problem: according to the comment, ${TEMP}.local-only should only contain messages that were changed only on local. However, look at the last message:

#, fuzzy
msgid ""
msgstr ""
"#-#-#-#-#  temp.local-changes (Local header)  #-#-#-#-#\n"
"Project-Id-Version: Local header\n"
"Content-Type: text/plain; charset=UTF-8\n"
"#-#-#-#-#  temp.conflicts (Remote header)  #-#-#-#-#\n"
"#-#-#-#-#  temp.remote-changes (Remote header)  #-#-#-#-#\n"
"Project-Id-Version: Remote header\n"
"Content-Type: text/plain; charset=UTF-8\n"
"#-#-#-#-#  temp.local-changes (Local header)  #-#-#-#-#\n"
"Project-Id-Version: Local header\n"
"Content-Type: text/plain; charset=UTF-8\n"

msgid "This little piggie is removed from remote, changed on local"
msgstr "3.local"

# msgid "This little piggie is removed from local, unchanged on remote"
# msgstr "4"
# msgid "This little piggie is removed from local, changed on remote"
# msgstr "5"
msgid "This little piggie is changed on local, unchanged on remote"
msgstr "6.local"

msgid "This little piggie is changed on remote and local"
msgstr "8.local"

merge-po; po file header isn't getting merged correctly

The header region of a po file contains information on authors, last edit, copyright etc. It often gets modified on one or more branches and also needs conflict resolution during a merge. However the current script seems to only keep the current branch version, not any changes being merged in.

Is it possible to correct this? Perhaps something like a normal git merge for the header region, and then the remainder of the file using the merge-po algorithm?

Gem won't install on 1.8.7

Installation process tries to install nokogiri and mime-types compatible with Ruby version > 1.9.2 if no other version is installed.

Reproduce scenario:

  • use Ruby 1.8.7
  • uninstall all versions of mime-types
  • gem install git-whistles
ERROR:  Error installing git-whistles:
    mime-types requires Ruby version >= 1.9.2.

All commands don't install correctly with 2.1.8 or 2.2.2 on Ubuntu 14.04

When I try to install git-whistles on a newly (and correctly :-) installed Ruby 2.1.8 or 2.2.2 on Ubuntu 14.04 using gem install git-whistles, the scripts from the libexec directory don't get linked anywhere, and so git-chop, git-list-branches, git-merge-po, and git-stash-and-checkout won't be accessible without manual intervention (i.e. without symlinking them to someplace on the path, such as to the current ruby's bin directory).

The following error also shows up, but executing gem pristine as suggested doesn't do any good:

/usr/local/rvm/gems/ruby-2.1.8/gems/git-whistles-1.1.0/bin/git-chop maybe `gem pristine git-whistles` will fix it?
/usr/local/rvm/gems/ruby-2.1.8/gems/git-whistles-1.1.0/bin/git-list-branches maybe `gem pristine git-whistles` will fix it?
/usr/local/rvm/gems/ruby-2.1.8/gems/git-whistles-1.1.0/bin/git-merge-po maybe `gem pristine git-whistles` will fix it?
/usr/local/rvm/gems/ruby-2.1.8/gems/git-whistles-1.1.0/bin/git-stash-and-checkout maybe `gem pristine git-whistles` will fix it?

.. and, in fact, the mentioned scripts are not present in the mentioned directory (only in ../libexec).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.