pigi 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +14 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +22 -0
- data/README.md +36 -0
- data/Rakefile +2 -0
- data/bin/pigi +6 -0
- data/lib/pigi.rb +45 -0
- data/lib/pigi/version.rb +3 -0
- data/pigi.gemspec +24 -0
- data/pivotal_tracker_story_id +1 -0
- metadata +99 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 0e87066990bc804a9ba87b0bc62f725689cfd3c6
|
4
|
+
data.tar.gz: 51337554ac342e425227697910ca59d4683613ac
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: ff58d4c0826f07b5b3ad4ca25100d023bc820f8037b76cbf22dbd9117bbb35604fa9e4d59d9d47a825f64a002e1e2f81174170810583738a9f3dc19a8fe3f8ce
|
7
|
+
data.tar.gz: d915fb6d687f3fccb8e5a86f23d221622731009698615e23ba6ca3abd15493614c52db30b88c7988dbc95b604411bc7d76200bcf3b6512c0e64647fce4014bec
|
data/.gitignore
ADDED
data/Gemfile
ADDED
data/LICENSE.txt
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
Copyright (c) 2015 Aleksander Grzyb
|
2
|
+
|
3
|
+
MIT License
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
6
|
+
a copy of this software and associated documentation files (the
|
7
|
+
"Software"), to deal in the Software without restriction, including
|
8
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
9
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
10
|
+
permit persons to whom the Software is furnished to do so, subject to
|
11
|
+
the following conditions:
|
12
|
+
|
13
|
+
The above copyright notice and this permission notice shall be
|
14
|
+
included in all copies or substantial portions of the Software.
|
15
|
+
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
17
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
18
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
19
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
20
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
21
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
22
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,36 @@
|
|
1
|
+
# Pigi
|
2
|
+
|
3
|
+
Pigi is a command line tool that automatically adds your Pivotal Tracker story ID into your commit message. The purpose of this tool is to speed up development process of developers using [integration](http://pivotallabs.com/level-up-your-development-workflow-with-github-pivotal-tracker/) between Github and Pivotal Tracker.
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
To install this tool execute a command:
|
8
|
+
|
9
|
+
$ gem install pigi
|
10
|
+
|
11
|
+
## Usage
|
12
|
+
|
13
|
+
When you begin to work on a particular story in Pivotal Tracker firstly set ID (for example ID = 12345678) of this story by executing a command:
|
14
|
+
|
15
|
+
$ pigi s 12345678
|
16
|
+
|
17
|
+
Now every time you want to commit changes in your git repository you do it by typing:
|
18
|
+
|
19
|
+
$ pigi m "add awesome feature"
|
20
|
+
|
21
|
+
The result of this command is identical as this command:
|
22
|
+
|
23
|
+
$ git commit -m "add awesome feature [#12345678]"
|
24
|
+
|
25
|
+
If you want to work on another story just simply set pigi to your current story ID that you are working on:
|
26
|
+
|
27
|
+
$ pigi s 87654321
|
28
|
+
|
29
|
+
|
30
|
+
## Contributing
|
31
|
+
|
32
|
+
1. Fork it ( https://github.com/aleksandergrzyb/PivotalGithubHelper/fork )
|
33
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
34
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
35
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
36
|
+
5. Create a new Pull Request
|
data/Rakefile
ADDED
data/bin/pigi
ADDED
data/lib/pigi.rb
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
require "pigi/version"
|
2
|
+
require "thor"
|
3
|
+
require 'rubygems'
|
4
|
+
|
5
|
+
module Pigi
|
6
|
+
class IDFileManager
|
7
|
+
@@filePath = Gem.loaded_specs['pigi'].full_gem_path + "/pivotal_tracker_story_id"
|
8
|
+
|
9
|
+
def self.saveIDToFile(id)
|
10
|
+
File.write(@@filePath, "#{id}")
|
11
|
+
end
|
12
|
+
|
13
|
+
def self.readID
|
14
|
+
if File::exists?(@@filePath)
|
15
|
+
arr = IO.readlines(@@filePath)
|
16
|
+
arr[0]
|
17
|
+
else
|
18
|
+
"ID wasn't set. Set your ID once again using s command."
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
class SetID < Thor
|
24
|
+
desc "s <id>", "Set <id> of your Pivotal Tracker story."
|
25
|
+
def s(id)
|
26
|
+
if !/\A\d{8}\z/.match(id)
|
27
|
+
puts "Invalid story ID format. Set your ID once again using s command."
|
28
|
+
else
|
29
|
+
puts "Set project ID: #{id}"
|
30
|
+
IDFileManager.saveIDToFile(id)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
desc "m <message>", "Execute a command in format 'git commit -m \"<message> [#<id>]\"'."
|
35
|
+
def m(message)
|
36
|
+
pivotalTrackerID = IDFileManager.readID()
|
37
|
+
if !/\A\d{8}\z/.match(pivotalTrackerID)
|
38
|
+
puts "Invalid story ID format. Set your ID once again using s command."
|
39
|
+
else
|
40
|
+
command = "git commit -m \"" + message + " [##{pivotalTrackerID}]\""
|
41
|
+
system(command)
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
data/lib/pigi/version.rb
ADDED
data/pigi.gemspec
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'pigi/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "pigi"
|
8
|
+
spec.version = Pigi::VERSION
|
9
|
+
spec.authors = ["Aleksander Grzyb"]
|
10
|
+
spec.email = ["aleksander.grzyb@gmail.com"]
|
11
|
+
spec.summary = "Command line tool that automatically adds Pivotal Tracker story ID into your commit message."
|
12
|
+
spec.description = "Command line tool that automatically adds Pivotal Tracker story ID into your commit message."
|
13
|
+
spec.homepage = "https://github.com/aleksandergrzyb/PivotalGithubHelper"
|
14
|
+
spec.license = "MIT"
|
15
|
+
|
16
|
+
spec.files = `git ls-files -z`.split("\x0")
|
17
|
+
spec.executables = ["pigi"]
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
20
|
+
|
21
|
+
spec.add_development_dependency "bundler", "~> 1.7"
|
22
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
23
|
+
spec.add_runtime_dependency "thor"
|
24
|
+
end
|
@@ -0,0 +1 @@
|
|
1
|
+
12345678
|
metadata
ADDED
@@ -0,0 +1,99 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: pigi
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Aleksander Grzyb
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-07-05 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: bundler
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '1.7'
|
20
|
+
type: :development
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '1.7'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: rake
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '10.0'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '10.0'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: thor
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
description: Command line tool that automatically adds Pivotal Tracker story ID into
|
56
|
+
your commit message.
|
57
|
+
email:
|
58
|
+
- aleksander.grzyb@gmail.com
|
59
|
+
executables:
|
60
|
+
- pigi
|
61
|
+
extensions: []
|
62
|
+
extra_rdoc_files: []
|
63
|
+
files:
|
64
|
+
- ".gitignore"
|
65
|
+
- Gemfile
|
66
|
+
- LICENSE.txt
|
67
|
+
- README.md
|
68
|
+
- Rakefile
|
69
|
+
- bin/pigi
|
70
|
+
- lib/pigi.rb
|
71
|
+
- lib/pigi/version.rb
|
72
|
+
- pigi.gemspec
|
73
|
+
- pivotal_tracker_story_id
|
74
|
+
homepage: https://github.com/aleksandergrzyb/PivotalGithubHelper
|
75
|
+
licenses:
|
76
|
+
- MIT
|
77
|
+
metadata: {}
|
78
|
+
post_install_message:
|
79
|
+
rdoc_options: []
|
80
|
+
require_paths:
|
81
|
+
- lib
|
82
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
83
|
+
requirements:
|
84
|
+
- - ">="
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: '0'
|
87
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
88
|
+
requirements:
|
89
|
+
- - ">="
|
90
|
+
- !ruby/object:Gem::Version
|
91
|
+
version: '0'
|
92
|
+
requirements: []
|
93
|
+
rubyforge_project:
|
94
|
+
rubygems_version: 2.4.5
|
95
|
+
signing_key:
|
96
|
+
specification_version: 4
|
97
|
+
summary: Command line tool that automatically adds Pivotal Tracker story ID into your
|
98
|
+
commit message.
|
99
|
+
test_files: []
|