bigkeeper 0.7.6 → 0.7.7
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/Gemfile.lock +1 -1
- data/big_keeper.gemspec +3 -3
- data/docs/en-US/README.md +2 -2
- data/docs/zh-CN/BIGKEEPER_FILE.md +2 -2
- data/docs/zh-CN/FEATURE&HOTFIX.md +18 -11
- data/lib/big_keeper.rb +9 -289
- data/lib/big_keeper/command/feature&hotfix.rb +140 -0
- data/lib/big_keeper/command/feature&hotfix/finish.rb +7 -4
- data/lib/big_keeper/command/feature&hotfix/publish.rb +7 -6
- data/lib/big_keeper/command/feature&hotfix/pull.rb +2 -2
- data/lib/big_keeper/command/feature&hotfix/push.rb +2 -2
- data/lib/big_keeper/command/feature&hotfix/rebase.rb +2 -2
- data/lib/big_keeper/command/feature&hotfix/start.rb +16 -6
- data/lib/big_keeper/command/feature&hotfix/switch.rb +4 -6
- data/lib/big_keeper/command/feature&hotfix/update.rb +6 -4
- data/lib/big_keeper/command/pod.rb +36 -0
- data/lib/big_keeper/command/release.rb +68 -0
- data/lib/big_keeper/command/release/home.rb +2 -1
- data/lib/big_keeper/dependency/dep_gradle_operator.rb +26 -130
- data/lib/big_keeper/dependency/dep_operator.rb +4 -10
- data/lib/big_keeper/dependency/dep_pod_operator.rb +9 -53
- data/lib/big_keeper/dependency/dep_service.rb +2 -2
- data/lib/big_keeper/dependency/dep_type.rb +4 -4
- data/lib/big_keeper/model/gitflow_type.rb +12 -0
- data/lib/big_keeper/service/git_service.rb +2 -2
- data/lib/big_keeper/service/module_service.rb +15 -6
- data/lib/big_keeper/util/cache_operator.rb +69 -0
- data/lib/big_keeper/util/gradle_operator.rb +151 -0
- data/lib/big_keeper/util/podfile_operator.rb +4 -4
- data/lib/big_keeper/version.rb +1 -1
- data/resources/keynote/big-keeper-readme-feature.key +0 -0
- metadata +10 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8b02490a4482b21afea4b0b7c529e37d7d5cc14a
|
4
|
+
data.tar.gz: 3b1581b1835064d928109eae24fe791e60d729ab
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 35c3e7ef3c40003c7818f748c41ad8bf6c56132ce823fce9057514a0870e0d7d3bb81f99241f4d56550d96e4fa65eaaf922376f5e09ea6832a3342d6d5800889
|
7
|
+
data.tar.gz: 30da0f0494391712d2e2736de23ec93e45f06e223848966b1dd67b08157b6b98f94eb45216b229fd102b448ab14a29aaf6f40dc8bb6bb5d0ce278451972fa554
|
data/Gemfile.lock
CHANGED
data/big_keeper.gemspec
CHANGED
@@ -9,9 +9,9 @@ Gem::Specification.new do |spec|
|
|
9
9
|
spec.authors = ["mmoaay"]
|
10
10
|
spec.email = ["mmoaay@sina.com"]
|
11
11
|
|
12
|
-
spec.summary = %q{Efficiency improvement for iOS modular development.}
|
13
|
-
spec.description = %q{Efficiency improvement for iOS modular development, iOSer using this tool can make modular development easier.}
|
14
|
-
spec.homepage = "https://github.com/BigKeeper/
|
12
|
+
spec.summary = %q{Efficiency improvement for iOS&Android modular development.}
|
13
|
+
spec.description = %q{Efficiency improvement for iOS&Android modular development, iOSer&Androider using this tool can make modular development easier.}
|
14
|
+
spec.homepage = "https://github.com/BigKeeper/bigkeeper"
|
15
15
|
spec.license = "MIT"
|
16
16
|
|
17
17
|
# Prevent pushing this gem to RubyGems.org. To allow pushes either set the 'allowed_push_host'
|
data/docs/en-US/README.md
CHANGED
@@ -5,13 +5,13 @@
|
|
5
5
|
# bigkeeper - All in home project
|
6
6
|
|
7
7
|
[](https://travis-ci.org/BigKeeper/bigkeeper)
|
8
|
-
[](https://codeclimate.com/github/BigKeeper/
|
8
|
+
[](https://codeclimate.com/github/BigKeeper/bigkeeper/maintainability)
|
9
9
|
[](https://rubygems.org/gems/bigkeeper)
|
10
10
|
[](https://www.ruby-lang.org/)
|
11
11
|
[](https://github.com/BigKeeper/big-keeper/blob/master/LICENSE)
|
12
12
|
[](https://gitter.im/Big-Keeper/Lobby)
|
13
13
|
|
14
|
-
bigkeeper is an efficiency improvement for iOS&Android modular development, iOSer&
|
14
|
+
bigkeeper is an efficiency improvement for iOS&Android modular development, iOSer&Androider using this tool can make modular development easier.
|
15
15
|
|
16
16
|
## Installation
|
17
17
|
|
@@ -29,7 +29,7 @@ home 'BigKeeperMain', :git => 'git@github.com:BigKeeper/BigKeeperMain.git', :pul
|
|
29
29
|
|
30
30
|
```
|
31
31
|
modules do
|
32
|
-
|
32
|
+
mod 'BigKeeperModular', :git => 'git@github.com:BigKeeper/BigKeeperModular.git', :pulls => 'https://github.com/BigKeeper/BigKeeperModular/pulls'
|
33
33
|
end
|
34
34
|
```
|
35
35
|
|
@@ -43,7 +43,7 @@ end
|
|
43
43
|
|
44
44
|
```
|
45
45
|
user 'perry' do
|
46
|
-
|
46
|
+
mod 'BigKeeperModular', :path => '../BigKeeperModular'
|
47
47
|
end
|
48
48
|
```
|
49
49
|
|
@@ -6,28 +6,31 @@
|
|
6
6
|
|
7
7
|
```
|
8
8
|
NAME
|
9
|
-
feature -
|
10
|
-
|
9
|
+
feature - Gitflow feature operations
|
11
10
|
|
12
11
|
SYNOPSIS
|
13
12
|
big [global options] feature delete
|
14
13
|
big [global options] feature finish
|
15
14
|
big [global options] feature list
|
15
|
+
big [global options] feature publish
|
16
16
|
big [global options] feature pull
|
17
17
|
big [global options] feature push
|
18
|
+
big [global options] feature rebase
|
18
19
|
big [global options] feature start
|
19
20
|
big [global options] feature switch
|
20
21
|
big [global options] feature update
|
21
22
|
|
22
23
|
COMMANDS
|
23
|
-
delete
|
24
|
-
finish
|
25
|
-
list
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
24
|
+
delete - Delete feature with name
|
25
|
+
finish - Finish current feature
|
26
|
+
list - List all the features
|
27
|
+
publish - Publish current feature
|
28
|
+
pull - Pull remote changes for current feature
|
29
|
+
push - Push local changes to remote for current feature
|
30
|
+
rebase - Rebase 'develop' to current feature
|
31
|
+
start - Start a new feature with name for given modules and main project
|
32
|
+
switch - Switch to the feature with name
|
33
|
+
update - Update modules for the feature with name
|
31
34
|
```
|
32
35
|
|
33
36
|
功能列表如下:
|
@@ -37,6 +40,7 @@ COMMANDS
|
|
37
40
|
- feature 的名字;
|
38
41
|
- 开发该 feature 需要改动的业务模块名。可以多个,用空格隔开;如果不指定,取 **Bigkeeper 文件中所有的业务模块名**。
|
39
42
|
- finish:结束当前 feature;
|
43
|
+
- publish:发布当前 feature;
|
40
44
|
- switch:切换到一个已经存在的 feature,输入参数为 feature 名;
|
41
45
|
- update:
|
42
46
|
更新一个 feature 需要改动的业务模块,输入参数依次为:
|
@@ -44,6 +48,7 @@ COMMANDS
|
|
44
48
|
- 开发该 feature 需要改动的业务模块名。可以多个,用空格隔开;如果不指定,取 **Bigkeeper 文件中所有的业务模块名**。
|
45
49
|
- pull:拉取当前 feature 主项目和业务模块的远程 git 仓库更新;
|
46
50
|
- push:提交并推送当前 feature 主项目和业务模块的本地变更到远程 git 仓库,输入参数为提交信息;
|
51
|
+
- rebase:rebase 主项目和业务模块 `develop` 分支到当前 feature;
|
47
52
|
- delete:根据 featue 名删除主项目和业务模块所有相关分支;(PS:慎用,因为会删除本地和远程所有相关分支)
|
48
53
|
- list:显示当前的 feature 列表。
|
49
54
|
|
@@ -53,8 +58,10 @@ COMMANDS
|
|
53
58
|
- 开发功能过程中如果发现某个模块其实不用改动,使用 bigkeeper feature update 来把这个模块从这个 feature 移除;
|
54
59
|
- 使用 bigkeeper feature pull 来同步主项目和相关业务模块远端变更;
|
55
60
|
- 使用 bigkeeper feature push 来推送主项目和相关业务模块变更到远端;
|
61
|
+
- 使用 bigkeeper feature rebase 来 rebase 主项目和业务模块 `develop` 分支到当前 feature;
|
56
62
|
- 使用 bigkeeper feature switch 来切换 feature,比如:两个功能并行开发的时候,就可以用这个命令互相切换了;
|
57
|
-
-
|
63
|
+
- 功能开发完成,需要单独打包提交测试时,使用 bigkeeper feature finish 结束开发;
|
64
|
+
- 开始进行集成测试,需要将代码 PR 到 develop 分支时,使用 bigkeeper feature publish;
|
58
65
|
- 如果开发过程中突然有新的功能需要紧急开发,直接使用 bigkeeper feature start 进行新功能开发,旧功能未提交的内容我们会保存在 stash 中。
|
59
66
|
|
60
67
|
## feature 的工作区
|
data/lib/big_keeper.rb
CHANGED
@@ -7,18 +7,9 @@ require 'big_keeper/util/git_operator'
|
|
7
7
|
|
8
8
|
require 'big_keeper/model/gitflow_type'
|
9
9
|
|
10
|
-
require 'big_keeper/command/feature&hotfix
|
11
|
-
require 'big_keeper/command/
|
12
|
-
require 'big_keeper/command/
|
13
|
-
require 'big_keeper/command/feature&hotfix/update'
|
14
|
-
require 'big_keeper/command/feature&hotfix/pull'
|
15
|
-
require 'big_keeper/command/feature&hotfix/push'
|
16
|
-
require 'big_keeper/command/feature&hotfix/rebase'
|
17
|
-
require 'big_keeper/command/feature&hotfix/publish'
|
18
|
-
require 'big_keeper/command/pod/podfile'
|
19
|
-
require 'big_keeper/command/feature&hotfix/delete'
|
20
|
-
require 'big_keeper/command/release/home'
|
21
|
-
require 'big_keeper/command/release/module'
|
10
|
+
require 'big_keeper/command/feature&hotfix'
|
11
|
+
require 'big_keeper/command/release'
|
12
|
+
require 'big_keeper/command/pod'
|
22
13
|
|
23
14
|
require 'big_keeper/service/git_service'
|
24
15
|
|
@@ -34,296 +25,25 @@ module BigKeeper
|
|
34
25
|
flag %i[v ver], default_value: 'Version in Bigkeeper file'
|
35
26
|
flag %i[u user], default_value: GitOperator.new.user.gsub(/[^0-9A-Za-z]/, '').downcase
|
36
27
|
|
37
|
-
path = ''
|
38
|
-
version = ''
|
39
|
-
user = GitOperator.new.user
|
40
|
-
|
41
|
-
pre do |global_options, _command, options, args|
|
42
|
-
path = File.expand_path(global_options[:path])
|
43
|
-
version = global_options[:ver]
|
44
|
-
user = global_options[:user].gsub(/[^0-9A-Za-z]/, '').downcase
|
45
|
-
end
|
46
|
-
|
47
28
|
if !GitflowOperator.new.verify_git_flow_command
|
48
29
|
p %Q('git-flow' not found, use 'brew install git-flow' to install it)
|
49
30
|
exit
|
50
31
|
end
|
51
32
|
|
52
|
-
|
53
|
-
command :feature do |c|
|
54
|
-
|
55
|
-
c.desc 'Start a new feature with name for given modules and main project'
|
56
|
-
c.command :start do |start|
|
57
|
-
start.action do |global_options, options, args|
|
58
|
-
help_now!('user name is required') if user and user.empty?
|
59
|
-
help_now!('feature name is required') if args.length < 1
|
60
|
-
name = args[0]
|
61
|
-
modules = args[(1...args.length)] if args.length > 1
|
62
|
-
start(path, version, user, name, modules, GitflowType::FEATURE)
|
63
|
-
end
|
64
|
-
end
|
65
|
-
|
66
|
-
c.desc 'Update modules for the feature with name'
|
67
|
-
c.command :update do |update|
|
68
|
-
update.action do |global_options, options, args|
|
69
|
-
help_now!('user name is required') if user and user.empty?
|
70
|
-
modules = args[(0...args.length)] if args.length > 0
|
71
|
-
update(path, user, modules, GitflowType::FEATURE)
|
72
|
-
end
|
73
|
-
end
|
74
|
-
|
75
|
-
c.desc 'Switch to the feature with name'
|
76
|
-
c.command :switch do |switch|
|
77
|
-
switch.action do |global_options, options, args|
|
78
|
-
help_now!('user name is required') if user and user.empty?
|
79
|
-
help_now!('feature name is required') if args.length < 1
|
80
|
-
name = args[0]
|
81
|
-
switch_to(path, version, user, name, GitflowType::FEATURE)
|
82
|
-
end
|
83
|
-
end
|
84
|
-
|
85
|
-
c.desc 'Pull remote changes for current feature'
|
86
|
-
c.command :pull do |pull|
|
87
|
-
pull.action do |global_options, options, args|
|
88
|
-
help_now!('user name is required') if user and user.empty?
|
89
|
-
pull(path, user, GitflowType::FEATURE)
|
90
|
-
end
|
91
|
-
end
|
92
|
-
|
93
|
-
c.desc 'Push local changes to remote for current feature'
|
94
|
-
c.command :push do |push|
|
95
|
-
push.action do |global_options, options, args|
|
96
|
-
help_now!('user name is required') if user and user.empty?
|
97
|
-
help_now!('comment message is required') if args.length < 1
|
98
|
-
help_now!(%Q(comment message should be wrappered with '' or "")) if args.length > 1
|
99
|
-
comment = args[0]
|
100
|
-
push(path, user, comment, GitflowType::FEATURE)
|
101
|
-
end
|
102
|
-
end
|
103
|
-
|
104
|
-
c.desc "Rebase 'develop' to current feature"
|
105
|
-
c.command :rebase do |rebase|
|
106
|
-
rebase.action do |global_options, options, args|
|
107
|
-
help_now!('user name is required') if user and user.empty?
|
108
|
-
rebase(path, user, GitflowType::FEATURE)
|
109
|
-
end
|
110
|
-
end
|
111
|
-
|
112
|
-
c.desc 'Finish current feature'
|
113
|
-
c.command :finish do |finish|
|
114
|
-
finish.action do |global_options, options, args|
|
115
|
-
help_now!('user name is required') if user and user.empty?
|
116
|
-
finish(path, user, GitflowType::FEATURE)
|
117
|
-
end
|
118
|
-
end
|
119
|
-
|
120
|
-
c.desc 'Publish current feature'
|
121
|
-
c.command :publish do |publish|
|
122
|
-
publish.action do |global_options, options, args|
|
123
|
-
help_now!('user name is required') if user and user.empty?
|
124
|
-
publish(path, user, GitflowType::FEATURE)
|
125
|
-
end
|
126
|
-
end
|
127
|
-
|
128
|
-
c.desc 'Delete feature with name'
|
129
|
-
c.command :delete do |delete|
|
130
|
-
delete.action do |global_options, options, args|
|
131
|
-
help_now!('user name is required') if user and user.empty?
|
132
|
-
help_now!('feature name is required') if args.length < 1
|
133
|
-
name = args[0]
|
134
|
-
delete(path, user, name, GitflowType::FEATURE)
|
135
|
-
end
|
136
|
-
end
|
137
|
-
|
138
|
-
c.desc 'List all the features'
|
139
|
-
c.command :list do |list|
|
140
|
-
list.action do
|
141
|
-
branchs = GitService.new.branchs_with_type(File.expand_path(path), GitflowType::FEATURE)
|
142
|
-
branchs.each do |branch|
|
143
|
-
p branch
|
144
|
-
end
|
145
|
-
end
|
146
|
-
end
|
147
|
-
end
|
148
|
-
|
149
|
-
desc 'Gitflow hotfix operations'
|
150
|
-
command :hotfix do |c|
|
151
|
-
|
152
|
-
c.desc 'Start a new hotfix with name for given modules and main project'
|
153
|
-
c.command :start do |start|
|
154
|
-
start.action do |global_options, options, args|
|
155
|
-
help_now!('user name is required') if user and user.empty?
|
156
|
-
help_now!('hotfix name is required') if args.length < 1
|
157
|
-
name = args[0]
|
158
|
-
modules = args[(1...args.length)] if args.length > 1
|
159
|
-
start(path, version, user, name, modules, GitflowType::HOTFIX)
|
160
|
-
end
|
161
|
-
end
|
162
|
-
|
163
|
-
c.desc 'Update modules for the hotfix with name'
|
164
|
-
c.command :update do |update|
|
165
|
-
update.action do |global_options, options, args|
|
166
|
-
help_now!('user name is required') if user and user.empty?
|
167
|
-
modules = args[(0...args.length)] if args.length > 0
|
168
|
-
update(path, user, modules, GitflowType::HOTFIX)
|
169
|
-
end
|
170
|
-
end
|
33
|
+
feature_and_hotfix_command(GitflowType::FEATURE)
|
171
34
|
|
172
|
-
|
173
|
-
c.command :switch do |switch|
|
174
|
-
switch.action do |global_options, options, args|
|
175
|
-
help_now!('user name is required') if user and user.empty?
|
176
|
-
help_now!('hotfix name is required') if args.length < 1
|
177
|
-
name = args[0]
|
178
|
-
switch_to(path, version, user, name, GitflowType::HOTFIX)
|
179
|
-
end
|
180
|
-
end
|
35
|
+
feature_and_hotfix_command(GitflowType::HOTFIX)
|
181
36
|
|
182
|
-
|
183
|
-
c.command :pull do |pull|
|
184
|
-
pull.action do |global_options, options, args|
|
185
|
-
help_now!('user name is required') if user and user.empty?
|
186
|
-
pull(path, user, GitflowType::HOTFIX)
|
187
|
-
end
|
188
|
-
end
|
37
|
+
release_command
|
189
38
|
|
190
|
-
|
191
|
-
c.command :push do |push|
|
192
|
-
push.action do |global_options, options, args|
|
193
|
-
help_now!('user name is required') if user and user.empty?
|
194
|
-
help_now!('comment message is required') if args.length < 1
|
195
|
-
help_now!(%Q(comment message should be wrappered with '' or "")) if args.length > 1
|
196
|
-
comment = args[0]
|
197
|
-
push(path, user, comment, GitflowType::HOTFIX)
|
198
|
-
end
|
199
|
-
end
|
200
|
-
|
201
|
-
c.desc "Rebase 'master' to current feature"
|
202
|
-
c.command :rebase do |rebase|
|
203
|
-
rebase.action do |global_options, options, args|
|
204
|
-
help_now!('user name is required') if user and user.empty?
|
205
|
-
rebase(path, user, GitflowType::HOTFIX)
|
206
|
-
end
|
207
|
-
end
|
208
|
-
|
209
|
-
c.desc 'Finish current hotfix'
|
210
|
-
c.command :finish do |finish|
|
211
|
-
finish.action do |global_options, options, args|
|
212
|
-
help_now!('user name is required') if user and user.empty?
|
213
|
-
finish(path, user, GitflowType::HOTFIX)
|
214
|
-
end
|
215
|
-
end
|
216
|
-
|
217
|
-
c.desc 'Publish current feature'
|
218
|
-
c.command :publish do |publish|
|
219
|
-
publish.action do |global_options, options, args|
|
220
|
-
help_now!('user name is required') if user and user.empty?
|
221
|
-
publish(path, user, GitflowType::HOTFIX)
|
222
|
-
end
|
223
|
-
end
|
224
|
-
|
225
|
-
c.desc 'Delete hotfix with name'
|
226
|
-
c.command :delete do |delete|
|
227
|
-
delete.action do |global_options, options, args|
|
228
|
-
help_now!('user name is required') if user and user.empty?
|
229
|
-
help_now!('feature name is required') if args.length < 1
|
230
|
-
name = args[0]
|
231
|
-
delete(path, user, name, GitflowType::HOTFIX)
|
232
|
-
end
|
233
|
-
end
|
234
|
-
|
235
|
-
c.desc 'List all the hotfixes'
|
236
|
-
c.command :list do |list|
|
237
|
-
list.action do
|
238
|
-
branchs = GitService.new.branchs_with_type(File.expand_path(path), GitflowType::HOTFIX)
|
239
|
-
branchs.each do |branch|
|
240
|
-
p branch
|
241
|
-
end
|
242
|
-
end
|
243
|
-
end
|
244
|
-
end
|
245
|
-
|
246
|
-
desc 'Gitflow release operations'
|
247
|
-
command :release do |c|
|
248
|
-
|
249
|
-
c.desc 'Release home project operations'
|
250
|
-
c.command :home do |home|
|
251
|
-
home.desc 'Start release home project'
|
252
|
-
home.command :start do |start|
|
253
|
-
start.action do |global_options, options, args|
|
254
|
-
help_now!('user name is required') if user and user.empty?
|
255
|
-
raise Logger.error("release version is required") if version == nil
|
256
|
-
release_home_start(path, version, user)
|
257
|
-
end
|
258
|
-
end
|
259
|
-
|
260
|
-
home.desc 'Finish release home project'
|
261
|
-
home.command :finish do |finish|
|
262
|
-
finish.action do |global_options, options, args|
|
263
|
-
raise Logger.error("release version is required") if version == nil
|
264
|
-
release_home_finish(path, version)
|
265
|
-
end
|
266
|
-
end
|
267
|
-
end
|
268
|
-
|
269
|
-
c.desc 'release module'
|
270
|
-
c.command :module do |m|
|
271
|
-
m.desc 'Start release module project'
|
272
|
-
m.command :start do |start|
|
273
|
-
start.action do |global_options, options, args|
|
274
|
-
help_now!('module name is required') if args.length != 1
|
275
|
-
raise Logger.error("release version is required") if version == nil
|
276
|
-
module_name = args[0]
|
277
|
-
release_module_start(path, version, user, module_name)
|
278
|
-
end
|
279
|
-
end
|
280
|
-
|
281
|
-
m.desc 'finish release module project'
|
282
|
-
m.command :finish do |finish|
|
283
|
-
finish.action do |global_options, options, args|
|
284
|
-
help_now!('module name is required') if args.length != 1
|
285
|
-
raise Logger.error("release version is required") if version == nil
|
286
|
-
module_name = args[0]
|
287
|
-
release_module_finish(path, version, user, module_name)
|
288
|
-
end
|
289
|
-
end
|
290
|
-
end
|
291
|
-
|
292
|
-
end
|
293
|
-
|
294
|
-
desc 'Podfile operation'
|
295
|
-
command :podfile do |podfile|
|
296
|
-
podfile.flag %i[pod podfile]
|
297
|
-
podfile.desc 'Podfile'
|
298
|
-
path = ''
|
299
|
-
|
300
|
-
podfile.desc 'Detect podname should be locked.'
|
301
|
-
podfile.command :detect do |detect|
|
302
|
-
detect.action do |global_options,options,args|
|
303
|
-
podfile_detect(path)
|
304
|
-
end
|
305
|
-
end
|
306
|
-
|
307
|
-
podfile.desc 'Lock podname should be locked.'
|
308
|
-
podfile.command :lock do |lock|
|
309
|
-
lock.action do |global_options, options, args|
|
310
|
-
podfile_lock(path)
|
311
|
-
end
|
312
|
-
end
|
313
|
-
|
314
|
-
podfile.desc 'Update modules should be upgrade.'
|
315
|
-
podfile.command :update do |lock|
|
316
|
-
lock.action do |global_options, options, args|
|
317
|
-
podfile_modules_update(path)
|
318
|
-
end
|
319
|
-
end
|
320
|
-
end
|
39
|
+
pod_command
|
321
40
|
|
322
41
|
desc 'Show version of bigkeeper'
|
323
42
|
command :version do |version|
|
324
43
|
version.action do |global_options, options, args|
|
325
44
|
p "bigkeeper (#{VERSION})"
|
326
45
|
end
|
327
|
-
end
|
46
|
+
end
|
47
|
+
|
328
48
|
exit run(ARGV)
|
329
49
|
end
|