jive 0.3.1 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/jive/cli.rb +7 -24
- data/lib/jive/git.rb +32 -9
- data/lib/jive/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a1a0eb369a76682bb73ee520c153849ae1f5ff78f8c84abf0fe23080b8caac7b
|
4
|
+
data.tar.gz: 183fd8c860a0954e653068edb23ebfc671b3972f0d5c25bfb163d2654e3d922a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e8dd33702a370ee56601a4a214069c3e174fbaad4d69982c8f47a426f9f9a462035fd978220ff874a7372f98482a6530ef7dd04ea1eeb556918aca508bff834b
|
7
|
+
data.tar.gz: f5c561f300d13bd795690240365f51468ed0d2e1d2ab2f42733b026a19fc319f919d33aeaaa8e18a9b83dc547677f06952ffbca79dcf0e404bca15bf1d68e529
|
data/lib/jive/cli.rb
CHANGED
@@ -41,26 +41,14 @@ module Jive
|
|
41
41
|
subcommand "git", (Class.new(Thor) do
|
42
42
|
desc "semantic", "Print help for semantic commit messages"
|
43
43
|
def semantic
|
44
|
-
say
|
45
|
-
|
46
|
-
|
47
|
-
<scope> is optional
|
48
|
-
|
49
|
-
feat: add hat wobble
|
50
|
-
^--^ ^------------^
|
51
|
-
| |
|
52
|
-
| +-> Summary in present tense.
|
53
|
-
|
|
54
|
-
+-------> Type: chore, docs, feat, fix, refactor, style, or test.
|
44
|
+
say Git.new.semantic_help
|
45
|
+
end
|
55
46
|
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
style: formatting, missing semi colons, etc; no production code change
|
62
|
-
test: adding missing tests, refactoring tests; no production code change
|
63
|
-
MESSAGE
|
47
|
+
method_option :host, type: :string, default: "github.com"
|
48
|
+
desc "clone <org>/<project>", "git clone to ~/src/github.com/<org>/<project>"
|
49
|
+
def clone(slug)
|
50
|
+
host = options[:host]
|
51
|
+
Jive.shell.run_safely { Git.new(Jive.shell).clone(slug, host: host) }
|
64
52
|
end
|
65
53
|
end)
|
66
54
|
|
@@ -69,11 +57,6 @@ module Jive
|
|
69
57
|
Jive.shell.run_safely { Git.new(Jive.shell).cd(slug) }
|
70
58
|
end
|
71
59
|
|
72
|
-
desc "clone <org>/<project>", "git clone to ~/src/github.com/<org>/<project>"
|
73
|
-
def clone(slug)
|
74
|
-
Jive.shell.run_safely { Git.new(Jive.shell).clone(slug) }
|
75
|
-
end
|
76
|
-
|
77
60
|
desc "exec <command>", "run command from jive.yml"
|
78
61
|
def exec(command)
|
79
62
|
path = Pathname.pwd.join("jive.yml")
|
data/lib/jive/git.rb
CHANGED
@@ -4,23 +4,23 @@ module Jive
|
|
4
4
|
class Git
|
5
5
|
attr_reader :shell
|
6
6
|
|
7
|
-
def initialize(shell)
|
7
|
+
def initialize(shell = ::Jive.shell)
|
8
8
|
@shell = shell
|
9
9
|
end
|
10
10
|
|
11
|
-
def clone(slug)
|
12
|
-
dir = target_dir_for(slug)
|
11
|
+
def clone(slug, host: "github.com")
|
12
|
+
dir = target_dir_for(slug, host: host)
|
13
13
|
unless dir.exist?
|
14
14
|
shell.run_each([
|
15
15
|
[:mkdir, "-p", dir.parent.to_s],
|
16
|
-
[:git, "clone", "git
|
16
|
+
[:git, "clone", "git@#{host}:#{slug}", dir]
|
17
17
|
])
|
18
18
|
end
|
19
|
-
cd(slug)
|
19
|
+
cd(slug, host: host)
|
20
20
|
end
|
21
21
|
|
22
|
-
def cd(slug)
|
23
|
-
dir = target_dir_for(slug)
|
22
|
+
def cd(slug, host: "github.com")
|
23
|
+
dir = target_dir_for(slug, host: host)
|
24
24
|
if dir.exist?
|
25
25
|
shell.after_run([
|
26
26
|
["cd", dir],
|
@@ -31,10 +31,33 @@ module Jive
|
|
31
31
|
end
|
32
32
|
end
|
33
33
|
|
34
|
+
def semantic_help
|
35
|
+
<<~MESSAGE
|
36
|
+
Format: <type>(<scope>): <subject>
|
37
|
+
|
38
|
+
<scope> is optional
|
39
|
+
|
40
|
+
feat: add hat wobble
|
41
|
+
^--^ ^------------^
|
42
|
+
| |
|
43
|
+
| +-> Summary in present tense.
|
44
|
+
|
|
45
|
+
+-------> Type: chore, docs, feat, fix, refactor, style, or test.
|
46
|
+
|
47
|
+
chore: updating grunt tasks etc; no production code change
|
48
|
+
docs: changes to the documentation
|
49
|
+
feat: new feature for the user, not a new feature for build script
|
50
|
+
fix: bug fix for the user, not a fix to a build script
|
51
|
+
refactor: refactoring production code, eg. renaming a variable
|
52
|
+
style: formatting, missing semi colons, etc; no production code change
|
53
|
+
test: adding missing tests, refactoring tests; no production code change
|
54
|
+
MESSAGE
|
55
|
+
end
|
56
|
+
|
34
57
|
private
|
35
58
|
|
36
|
-
def target_dir_for(slug)
|
37
|
-
Pathname.new(Dir.home).join("src
|
59
|
+
def target_dir_for(slug, host:)
|
60
|
+
Pathname.new(Dir.home).join("src/#{host}/#{slug}")
|
38
61
|
end
|
39
62
|
end
|
40
63
|
end
|
data/lib/jive/version.rb
CHANGED