git-review 0.6.6 → 0.6.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (2) hide show
  1. data/lib/git-review.rb +33 -27
  2. metadata +3 -3
data/lib/git-review.rb CHANGED
@@ -7,21 +7,6 @@ class GitReview
7
7
 
8
8
  ## COMMANDS ##
9
9
 
10
- # Default command to show a quick reference of available commands.
11
- def help
12
- puts 'Usage: git review <command>'
13
- puts 'Manage review workflow for projects hosted on GitHub (using pull requests).'
14
- puts
15
- puts 'Available commands:'
16
- puts ' list [--reverse] List all pending requests.'
17
- puts ' show <number> [--full] Show details of a single request.'
18
- puts ' browse <number> Open a browser window and review a specified request.'
19
- puts ' checkout <number> Checkout a specified request\'s changes to your local repository.'
20
- puts ' merge <number> Accept a specified request by merging it into master.'
21
- puts ' close <number> Close a specified request.'
22
- puts ' create Create a new request.'
23
- end
24
-
25
10
  # List all pending requests.
26
11
  def list
27
12
  @pending_requests.reverse! if @args.shift == '--reverse'
@@ -150,20 +135,36 @@ class GitReview
150
135
  # Setup variables and call actual commands.
151
136
  def initialize(args)
152
137
  command = args.shift
153
- @user, @repo = repo_info
154
- @args = args
155
- configure_github_access
156
- if command && self.respond_to?(command)
138
+ if command and self.respond_to?(command)
139
+ @user, @repo = repo_info
140
+ return if @user.nil? or @repo.nil?
141
+ @args = args
142
+ return unless configure_github_access
157
143
  update
158
144
  self.send command
159
145
  else
160
- unless command.nil? or command.empty? or %w(-h --help).include?(command)
146
+ unless command.nil? or command.empty? or %w(help -h --help).include?(command)
161
147
  puts "git-review: '#{command}' is not a valid command.\n\n"
162
148
  end
163
149
  help
164
150
  end
165
151
  end
166
152
 
153
+ # Show a quick reference of available commands.
154
+ def help
155
+ puts 'Usage: git review <command>'
156
+ puts 'Manage review workflow for projects hosted on GitHub (using pull requests).'
157
+ puts
158
+ puts 'Available commands:'
159
+ puts ' list [--reverse] List all pending requests.'
160
+ puts ' show <number> [--full] Show details of a single request.'
161
+ puts ' browse <number> Open a browser window and review a specified request.'
162
+ puts ' checkout <number> Checkout a specified request\'s changes to your local repository.'
163
+ puts ' merge <number> Accept a specified request by merging it into master.'
164
+ puts ' close <number> Close a specified request.'
165
+ puts ' create Create a new request.'
166
+ end
167
+
167
168
  # Check existence of specified request and assign @pending_request.
168
169
  def request_exists?(request_id = nil)
169
170
  # NOTE: If request_id is set explicitly we might need to update to get the
@@ -246,16 +247,17 @@ class GitReview
246
247
 
247
248
  # Checks '~/.gitconfig' for credentials and
248
249
  def configure_github_access
249
- if (github_token.empty? or github_login.empty?)
250
+ if github_token.empty? or github_login.empty?
250
251
  puts 'Please update your git config and provide your GitHub user name and token.'
251
252
  puts 'Some commands won\'t work properly without these credentials.'
252
- else
253
- Octokit.configure do |config|
254
- config.login = github_login
255
- config.token = github_token
256
- config.endpoint = github_endpoint
257
- end
253
+ return false
254
+ end
255
+ Octokit.configure do |config|
256
+ config.login = github_login
257
+ config.token = github_token
258
+ config.endpoint = github_endpoint
258
259
  end
260
+ true
259
261
  end
260
262
 
261
263
  # Get GitHub user name.
@@ -285,6 +287,10 @@ class GitReview
285
287
  end
286
288
  # Extract user and project name from GitHub URL.
287
289
  url = config_hash['remote.origin.url']
290
+ if url.nil?
291
+ puts "Error: Not a git repository."
292
+ return [nil, nil]
293
+ end
288
294
  user, project = github_user_and_project(url)
289
295
  # If there are no results yet, look for 'insteadof' substitutions in URL and try again.
290
296
  unless (user and project)
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: git-review
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
4
+ hash: 9
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 6
9
- - 6
10
- version: 0.6.6
9
+ - 7
10
+ version: 0.6.7
11
11
  platform: ruby
12
12
  authors:
13
13
  - Dominik Bamberger, Cristian Messel