kk-git 0.1.2 → 0.1.4
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/exe/kk-git +15 -1
- data/lib/kk/git/rake_tasks.rb +43 -0
- data/lib/kk/git/version.rb +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3ca69c20553ab35b3d5e5f2372902cbe391aa7c6cce9aa761a6eac5b25398179
|
|
4
|
+
data.tar.gz: dab4efe83a765c4904346fb1e1bdb1c2feed600831e997aea83b41a6e8c88094
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: '008eb6e289dedb293bec81dd52c3fe9367d59276f51f6189f6d0988ac187a0a523981988fa4c0aee233244b7bd1613e6fd6303a86c4d9d868121744f095d321f'
|
|
7
|
+
data.tar.gz: 9f1cb69b654adcda6f5d6eb6cd8477cff12960334caeafa5276b10e4cf3ec4c505601c16845be20fd2329df22bcea5b05dc8c47111f9d7c66769b864f7e3de14
|
data/exe/kk-git
CHANGED
|
@@ -22,7 +22,10 @@ options = {
|
|
|
22
22
|
}
|
|
23
23
|
|
|
24
24
|
parser = OptionParser.new do |opts|
|
|
25
|
-
opts.banner = "Usage
|
|
25
|
+
opts.banner = "Usage:\n" \
|
|
26
|
+
" kk-git --version\n" \
|
|
27
|
+
" kk-git commit-message [options]\n\n" \
|
|
28
|
+
"根据当前 Git repo 变更生成 Conventional Commit 信息。"
|
|
26
29
|
|
|
27
30
|
opts.on('--repo DIR', '指定 repo 目录(默认当前目录)') { |v| options[:repo_dir] = v }
|
|
28
31
|
|
|
@@ -45,6 +48,17 @@ parser = OptionParser.new do |opts|
|
|
|
45
48
|
puts opts
|
|
46
49
|
exit 0
|
|
47
50
|
end
|
|
51
|
+
|
|
52
|
+
opts.on('-v', '--version', '显示版本号') do
|
|
53
|
+
puts KKGit::VERSION
|
|
54
|
+
exit 0
|
|
55
|
+
end
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
# 支持 `kk-git --version` 这种无子命令形式
|
|
59
|
+
if ['--version', '-v'].include?(ARGV[0])
|
|
60
|
+
puts KKGit::VERSION
|
|
61
|
+
exit 0
|
|
48
62
|
end
|
|
49
63
|
|
|
50
64
|
subcommand = ARGV.shift
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require 'rake'
|
|
4
|
+
require 'kk/git'
|
|
5
|
+
|
|
6
|
+
module KKGit
|
|
7
|
+
# Rake 集成:在任意项目的 Rakefile 中 `require 'kk/git/rake_tasks'` 即可注册任务。
|
|
8
|
+
#
|
|
9
|
+
# 说明:
|
|
10
|
+
# - 这些任务**不会 exit/abort**,以便在其它 task 中被 invoke。
|
|
11
|
+
# - 会把生成结果写入 `ENV['KK_GIT_COMMIT_MESSAGE']`,方便上层 task 复用。
|
|
12
|
+
module RakeTasks
|
|
13
|
+
def self.install!
|
|
14
|
+
extend Rake::DSL
|
|
15
|
+
|
|
16
|
+
namespace :git do
|
|
17
|
+
desc '根据暂存区变更生成 commit message(Conventional Commits)'
|
|
18
|
+
task :commit_message do
|
|
19
|
+
msg = KKGit::CommitMessage.generate(mode: :staged)
|
|
20
|
+
ENV['KK_GIT_COMMIT_MESSAGE'] = msg.to_s
|
|
21
|
+
puts msg if msg
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
desc '根据工作区变更生成 commit message(含 untracked)'
|
|
25
|
+
task :commit_message_worktree do
|
|
26
|
+
msg = KKGit::CommitMessage.generate(mode: :worktree)
|
|
27
|
+
ENV['KK_GIT_COMMIT_MESSAGE'] = msg.to_s
|
|
28
|
+
puts msg if msg
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
desc '合并暂存区+工作区变更生成 commit message'
|
|
32
|
+
task :commit_message_all do
|
|
33
|
+
msg = KKGit::CommitMessage.generate(mode: :all)
|
|
34
|
+
ENV['KK_GIT_COMMIT_MESSAGE'] = msg.to_s
|
|
35
|
+
puts msg if msg
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
KKGit::RakeTasks.install!
|
|
43
|
+
|
data/lib/kk/git/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kk-git
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.4
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- kk
|
|
@@ -22,6 +22,7 @@ files:
|
|
|
22
22
|
- exe/kk-git
|
|
23
23
|
- lib/kk/git.rb
|
|
24
24
|
- lib/kk/git/commit_message.rb
|
|
25
|
+
- lib/kk/git/rake_tasks.rb
|
|
25
26
|
- lib/kk/git/version.rb
|
|
26
27
|
homepage: ''
|
|
27
28
|
licenses:
|