sah 0.0.9 → 0.0.10

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: db632c3e30f681ebb32cbd7de8def2f30d48d84d
4
- data.tar.gz: 78b56e57314886eef1eacc03ef765d977916c847
3
+ metadata.gz: 161e4df3c4dfc208f124837647d60065c8f912e0
4
+ data.tar.gz: 022de9c23c9c0e8d2082fd13935e2869c11b91c4
5
5
  SHA512:
6
- metadata.gz: 353ce0328e18b0f1ec14ce3d481dd4074dc92b1d104cc6885d00fcca2fefbfc256605ae0d97d2a4ba462c6e8f64003eb73833304a2c16dcbc881c02ab33295f4
7
- data.tar.gz: afd4a367f3beb492d3aa9ca68c8c88ff918119ec6f0b27ca40d853cbe50f7cba2f796101dd910d9454bcfa454f134e632388ecc97df5a620c62291af57397a11
6
+ metadata.gz: bb87ed8c0ed8e53681afb97e364c2f7f76f81c198e97c9775b9d0f0a4298e9062791d45ab188103e045855df1919e1739689be25652fac2bf938f805cfd0792c
7
+ data.tar.gz: b7b8125d1bd18a7b84b75874255ad4df6c40027adb85332029e769e18fe4b325e1e2959cfc3aeaab3feb07bfcb488621c47e79e7bfb92e80620830b4bab7bdb9
data/README.md CHANGED
@@ -32,6 +32,9 @@ If you use multiple Bitbucket Server, define profile(s) and specify it.
32
32
  sah browse
33
33
  # browse current repository
34
34
 
35
+ sah browse REMOTE
36
+ # browse remote repository named REMOTE
37
+
35
38
  sah browse REPO
36
39
  # browse ~YOUR_NAME/REPO
37
40
 
data/lib/sah/cli.rb CHANGED
@@ -1,9 +1,10 @@
1
1
  require "sah"
2
+ require "open3"
3
+ require "tempfile"
2
4
  require "thor"
3
5
  require "hirb"
4
6
  require "hirb-unicode"
5
7
  require "launchy"
6
- require "tempfile"
7
8
 
8
9
  module Sah
9
10
  class CLI < Thor
@@ -19,6 +20,9 @@ module Sah
19
20
  sah browse
20
21
  \x5# browse current repository
21
22
 
23
+ sah browse REMOTE
24
+ \x5# browse remote repository named REMOTE
25
+
22
26
  sah browse REPO
23
27
  \x5# browse ~YOUR_NAME/REPO
24
28
 
@@ -45,8 +49,13 @@ module Sah
45
49
  method_option :"pull-request", aliases: "-r", desc: "Show pull request(s)"
46
50
  def browse(arg=nil)
47
51
  if arg
48
- repository_slug, project_key = arg.split("/").reverse
49
- project_key ||= "~#{config.user}"
52
+ if remotes.include? arg
53
+ remote(arg).match %r%/([^/]+)/([^/]+?)(?:\.git)?$%
54
+ project_key, repository_slug = $1, $2
55
+ else
56
+ repository_slug, project_key = arg.split("/").reverse
57
+ project_key ||= "~#{config.user}"
58
+ end
50
59
  else
51
60
  remote_url = `git config --get remote.origin.url`.chomp
52
61
  remote_url.match %r%/([^/]+)/([^/]+?)(?:\.git)?$%
@@ -395,6 +404,14 @@ module Sah
395
404
  %x(git rev-parse --abbrev-ref HEAD).chomp
396
405
  end
397
406
 
407
+ def remotes
408
+ Open3.capture3('git remote').first.split
409
+ end
410
+
411
+ def remote(name)
412
+ %x(git remote show "#{name}").scan(/(?<=Fetch URL: ).*?\.git/).first
413
+ end
414
+
398
415
  def upstream_repository
399
416
  remote_url = `git config --get remote.origin.url`.chomp
400
417
  remote_url.match %r%/([^/]+)/([^/]+?)(?:\.git)?$%
data/lib/sah/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Sah
2
- VERSION = "0.0.9"
2
+ VERSION = "0.0.10"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sah
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - f440
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2015-10-20 00:00:00.000000000 Z
11
+ date: 2015-11-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor