mavenlink-git-scripts 1.5.0

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.
@@ -0,0 +1,52 @@
1
+ require 'pivotal_git_scripts/git_pair'
2
+
3
+ describe PivotalGitScripts::GitPair::Runner do
4
+ let(:runner) { described_class.new }
5
+
6
+ describe 'set_git_config' do
7
+ it 'calls git config with pairs in the options' do
8
+ runner.should_receive(:system).with('git config user.foo "bar baz"')
9
+
10
+ runner.set_git_config(false, 'foo' => 'bar baz')
11
+ end
12
+
13
+ it 'can unset git config options' do
14
+ runner.should_receive(:system).with('git config --unset user.foo')
15
+
16
+ runner.set_git_config(false, 'foo' => nil)
17
+ end
18
+
19
+ it 'can handle multiple pairs in a hash' do
20
+ runner.should_receive(:system).with('git config --unset user.remove')
21
+ runner.should_receive(:system).with('git config user.ten "10"')
22
+
23
+ runner.set_git_config(false, 'remove' => nil, 'ten' => '10')
24
+ end
25
+
26
+ it 'supports a global option' do
27
+ runner.should_receive(:system).with('git config --global user.foo "bar baz"')
28
+
29
+ runner.set_git_config(true, 'foo' => 'bar baz')
30
+ end
31
+ end
32
+
33
+ describe 'read_author_info_from_config' do
34
+ it 'maps from the initials to the full name' do
35
+ config = {
36
+ 'pairs' => {
37
+ 'aa' => 'An Aardvark',
38
+ 'tt' => 'The Turtle'
39
+ }
40
+ }
41
+
42
+ names = runner.read_author_info_from_config(config, ['aa', 'tt'])
43
+ names.should =~ ['An Aardvark', 'The Turtle']
44
+ end
45
+
46
+ it 'exits when initials cannot be found' do
47
+ expect {
48
+ runner.read_author_info_from_config({"pairs" => {}}, ['aa'])
49
+ }.to raise_error(PivotalGitScripts::GitPair::GitPairException)
50
+ end
51
+ end
52
+ end
@@ -0,0 +1,100 @@
1
+ -----BEGIN PGP PUBLIC KEY BLOCK-----
2
+
3
+ mI0EV3Rw9AEEAOYXwUh1oLgEjnlMHeOTOr6XoQSRK0rxM6Ff5vRM+rQjwvnnm+57
4
+ pPi2QllY/b7LDUWQbjfy2yfdOLUQHgpI5MQM8BLMz/jmcKCzQCZD8lfd+I7Mnuk3
5
+ lS1fAtNRviHpSLXOlE/wLm/QxnsERHIMFLdOdMQQcgcE/iHDjxf01KJbABEBAAG0
6
+ GkFhIEJiIDxhYmJAb3RoZXItaG9zdC5jb20+iLgEEwECACIFAld0cPQCGwMGCwkI
7
+ BwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJENv7kh1U5BbxRLQD/0yPZ7VvhvxJOySA
8
+ 7Ivpu09qdeM5MMClmMjl9aWp6KeMr1qC9v9B5dPQxVqJy3YBi2/MCEuGjeH9PydX
9
+ NItvzzDm+Obok7myt4PHb5RV4FGy5oFTp8qmEGO/kWe4Rupqe8CEXH0+hOa39eLS
10
+ ghY0yeaabPWKxmpG+g7bO0Y7W5kjuI0EV3Rw9AEEANdyt3JSJlWrruXA0tFJvAvm
11
+ uP60Cz5idDWqKpWNT4HDRamIYITdmgJ01o/o8WA8zOLbp7MSAeVMO146OXw8Z9UK
12
+ rLglJOhGc3JGnfOJEnC9W7I9+0v6DGW4sDi702AN2QE4Jm3LeqYlZ8a4rEM0QST7
13
+ Bohxa3Ug1DWg9lTyVROlABEBAAGInwQYAQIACQUCV3Rw9AIbDAAKCRDb+5IdVOQW
14
+ 8VyWA/44JU4d6p0aNo1j1XdUbRgSo/up7uPPGS0D8y0dNwjT/E+ln3QSCKOdtzfo
15
+ G1cLrr2Q8/XgDlYeAGWNPbC6pYREMoKpR5gYrC8/5VxpF4zhIvh5r8nBoIGKM+IZ
16
+ QRMYGBi+1yEKvxxpXOMrku5HbQ8yhHhZB849okyofj9on2c2Bw==
17
+ =q2u7
18
+ -----END PGP PUBLIC KEY BLOCK-----
19
+ -----BEGIN PGP PRIVATE KEY BLOCK-----
20
+
21
+ lQHYBFd0cPQBBADmF8FIdaC4BI55TB3jkzq+l6EEkStK8TOhX+b0TPq0I8L555vu
22
+ e6T4tkJZWP2+yw1FkG438tsn3Ti1EB4KSOTEDPASzM/45nCgs0AmQ/JX3fiOzJ7p
23
+ N5UtXwLTUb4h6Ui1zpRP8C5v0MZ7BERyDBS3TnTEEHIHBP4hw48X9NSiWwARAQAB
24
+ AAP+Lvx03N4gZtOPYJe5lspu+ZKvL+aRJ6mfuHmECSlbHMQcwbmZLxcStjNJ00MH
25
+ 9hky6Zy31TcDp91WAit7ZvBBvqAUTHDHmfoXR06nb6n90XaTi/m9TDylXFL/TNP+
26
+ L36WOSKfKut2iBfQXfchHi2JaQJwzABbQBhPAuSy3erJCfkCAOrMQBPqYUOFQ19u
27
+ psR0QRc9mRdPGsgE/ldlGFpoOQkdOTgZyghjaNYZhkLJI51e12jtvBJV2CHOJ2JG
28
+ rwKcVwcCAPrevUIgK1DypR5vV6UIdSZkmiIrD35lTDG5xsNTAwxTDNwZ+E1qW+xg
29
+ rMPLbknWjh/CUmaHctJynmU6W5ANUQ0B+gJbfTXNUiVVfSEaUOd8P1XTm/DJwQly
30
+ vGVlp71a5gnnPunatnuIGRbVGwQo5LyVfW9/sXYdS7Hg27RZ/j+sPs2Wi7QaQWEg
31
+ QmIgPGFiYkBvdGhlci1ob3N0LmNvbT6IuAQTAQIAIgUCV3Rw9AIbAwYLCQgHAwIG
32
+ FQgCCQoLBBYCAwECHgECF4AACgkQ2/uSHVTkFvFEtAP/TI9ntW+G/Ek7JIDsi+m7
33
+ T2p14zkwwKWYyOX1panop4yvWoL2/0Hl09DFWonLdgGLb8wIS4aN4f0/J1c0i2/P
34
+ MOb45uiTubK3g8dvlFXgUbLmgVOnyqYQY7+RZ7hG6mp7wIRcfT6E5rf14tKCFjTJ
35
+ 5pps9YrGakb6Dts7RjtbmSOdAdgEV3Rw9AEEANdyt3JSJlWrruXA0tFJvAvmuP60
36
+ Cz5idDWqKpWNT4HDRamIYITdmgJ01o/o8WA8zOLbp7MSAeVMO146OXw8Z9UKrLgl
37
+ JOhGc3JGnfOJEnC9W7I9+0v6DGW4sDi702AN2QE4Jm3LeqYlZ8a4rEM0QST7Bohx
38
+ a3Ug1DWg9lTyVROlABEBAAEAA/sFiY9DD7vbsjpTV8dgInlqabDet8xQlPTQd3uT
39
+ G6F4syCHoPFKH1MlnDcl77v0cahnOqbVKJgf4Pu0CkiowF/l9i0vH58O/JQKdbpE
40
+ 8VNajRFHslifr+Bzm/iL7Si0PBRkpIzMYlKFT+Yynic96wQ1MeBMq8yOkEV/9enE
41
+ nhnHaQIA6Cf6p68yG2MJJgVFcd1lwIiII5PXtD22ut7nNhq+DIzrpzNfi4KGU2+F
42
+ VJzMAH2GZe4UECZxJetsNlzmAA8SNwIA7ZNv2zxpr1DBIVYxKVbc16UmROke9vAD
43
+ +hXoo1pvTlkqo8I3574PxIxUbTNiMHZRuiJ2jbSEESZlUYhzxNyLAwIAiyGji4LR
44
+ loPG1xVMBXcJ3pvAnn5WoTGdM+bBoDS1GYA319OsKisr/QdiGNlXlGwZ/wtyEMF/
45
+ NGhjVYSGO4RVQZmhiJ8EGAECAAkFAld0cPQCGwwACgkQ2/uSHVTkFvFclgP+OCVO
46
+ HeqdGjaNY9V3VG0YEqP7qe7jzxktA/MtHTcI0/xPpZ90Egijnbc36BtXC669kPP1
47
+ 4A5WHgBljT2wuqWERDKCqUeYGKwvP+VcaReM4SL4ea/JwaCBijPiGUETGBgYvtch
48
+ Cr8caVzjK5LuR20PMoR4WQfOPaJMqH4/aJ9nNgc=
49
+ =1pXE
50
+ -----END PGP PRIVATE KEY BLOCK-----
51
+ -----BEGIN PGP PUBLIC KEY BLOCK-----
52
+
53
+ mI0EV3RxJgEEANIbuxlsiCqvaUZpt+wyeqi5R4WQn6xuh8gXBZo+bhZhKefA1hr1
54
+ 2ZV4hakBmEs4fk+FJ4BhiRECZ5sXEwOLN4q6uocqt6JXZmDSRFAHlGBlyjl5bP9U
55
+ ZpkzkUXjN5wmTGvei6E304JFHnb/RyR9bAdhXUDnDqgR1u6v+hJn4eMhABEBAAG0
56
+ GkJiIENjIDxiY2NAb3RoZXItaG9zdC5jb20+iLgEEwECACIFAld0cSYCGwMGCwkI
57
+ BwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEEXx+iVKAAznYxgEAMUZN+25tEaOd1wn
58
+ uNIaXCdBGBS4trf34n14OGbky9eh96X3FAKOt0nJ6xZULLbqD1OpWIU8NugstXAw
59
+ XoFTTYHK4Cm0pRtCLKnnrmg6G1uo+wrzlnpCziCzGKu91vCdtk/1Hm80eNUSyXRJ
60
+ O1lkI/0l0GKsRfUYLcpeJa7PrtcFuI0EV3RxJgEEAMGPBWnD5HLZtvmfDfBnnjhl
61
+ yU9ClRDdPNELJ+c5dRZTjkbJYVHaMGO+EH1ErGC1I5S/4vyiBC/MMK2GZzqzxZpF
62
+ Rkj3dnZSQutcEDss2p6oHZ/j9GZhZPD10fSDthym2grbMtRZ9LMpF6jq/lngzDZQ
63
+ B2jKk4KE+LgR4oExWD/vABEBAAGInwQYAQIACQUCV3RxJgIbDAAKCRBF8folSgAM
64
+ 5wb6BADEiYHDrtiuOEFnfAKDm+rTbp2jR8eCIC5Jlx0Klc0cg3jKX+1+ye5Tqq2y
65
+ q47zLAVidc7FPxAJdBeUCNhGwX1RdsJ9T3u7+7N7U6bKnaE4hWFTIQnFMZmCkYY5
66
+ 7Cm1wO7fb7bR63lYUqqo2iuv/LTzMA51zIvden6wcHUtjQJf5Q==
67
+ =mDht
68
+ -----END PGP PUBLIC KEY BLOCK-----
69
+ -----BEGIN PGP PRIVATE KEY BLOCK-----
70
+
71
+ lQHYBFd0cSYBBADSG7sZbIgqr2lGabfsMnqouUeFkJ+sbofIFwWaPm4WYSnnwNYa
72
+ 9dmVeIWpAZhLOH5PhSeAYYkRAmebFxMDizeKurqHKreiV2Zg0kRQB5RgZco5eWz/
73
+ VGaZM5FF4zecJkxr3ouhN9OCRR52/0ckfWwHYV1A5w6oEdbur/oSZ+HjIQARAQAB
74
+ AAP+IHwuoafs5rKfw4YBbJjCa7dX1lANy/576mUa1eYMpdOog79GKz1zQn+zpLWN
75
+ KyYlK1zSRnBuHY3iYHGBHFVoRPgyLzVnP3fmktiMdoDY84hiDICCfYNzSQoPhSC7
76
+ 0LgyI0c9q4thlv6pRzrlZs+Q6qZ/XtZ4VbzLyn7SI5i2D4UCANqosv6BXGPg2CEg
77
+ 4lj4NJj6VwSbJbz7qSBO5PjMGROYTdopI3S9+exg7FNxrY2z7oNERT+8zS4znl38
78
+ K+AOjS0CAPX9NxzvMCz8I4Xlgoe4/qZqAgkd688K+G3YFEta+9tIbw5ymlXEXeop
79
+ tWOn5QcbwRZ82HbJ0zsQvxI6Ef1O7kUCAPHsIHEXCcNAImf5k+USRzbPsyhS7FWv
80
+ F48RV2f412/MG1kn10JyX3KsetcUS1Mg8C/qHFRR69hoRUk25hq8tCiga7QaQmIg
81
+ Q2MgPGJjY0BvdGhlci1ob3N0LmNvbT6IuAQTAQIAIgUCV3RxJgIbAwYLCQgHAwIG
82
+ FQgCCQoLBBYCAwECHgECF4AACgkQRfH6JUoADOdjGAQAxRk37bm0Ro53XCe40hpc
83
+ J0EYFLi2t/fifXg4ZuTL16H3pfcUAo63ScnrFlQstuoPU6lYhTw26Cy1cDBegVNN
84
+ gcrgKbSlG0IsqeeuaDobW6j7CvOWekLOILMYq73W8J22T/UebzR41RLJdEk7WWQj
85
+ /SXQYqxF9Rgtyl4lrs+u1wWdAdgEV3RxJgEEAMGPBWnD5HLZtvmfDfBnnjhlyU9C
86
+ lRDdPNELJ+c5dRZTjkbJYVHaMGO+EH1ErGC1I5S/4vyiBC/MMK2GZzqzxZpFRkj3
87
+ dnZSQutcEDss2p6oHZ/j9GZhZPD10fSDthym2grbMtRZ9LMpF6jq/lngzDZQB2jK
88
+ k4KE+LgR4oExWD/vABEBAAEAA/sHNWmHm3R+C26GPPpGa9qXhkzAikDF+yahSBV9
89
+ l2ItXdMviogES7QFv0/3/gJCCFLQO+eg7jkMscGzQo1QHlMOeHMQB9Nw2qXa4Vzx
90
+ Zs7jVVTVKo1GyCD28/aOhcD9Cip+/31trjqBJ5HwqgZ77kuxv1BDbSRQdXpgk0vH
91
+ dREIPQIAyLjs/0QB0bmR/9+CbEn/dkZDTmQPsBYybTuPJP2l4KJjRdT4CZLJQHeo
92
+ XvH2AURFAR1GYbNbB1ggZ6FhlzSrdQIA9t0Myw1MJUAggQTGmqIL52OVWAMRE/4f
93
+ Rz5EAMzByfOMUJupq+nHyOH1q9iobJe+Ca9Jtpk/DyTBifD4OrHlUwIA9q7xVN9k
94
+ WnAtNQd8wJ7xMvTgYXuW16htskeSXIFCCAdiFV6FCx0AwSJGX6D4yAsrCuIOuito
95
+ J8zuU4yA9lqNGZsqiJ8EGAECAAkFAld0cSYCGwwACgkQRfH6JUoADOcG+gQAxImB
96
+ w67YrjhBZ3wCg5vq026do0fHgiAuSZcdCpXNHIN4yl/tfsnuU6qtsquO8ywFYnXO
97
+ xT8QCXQXlAjYRsF9UXbCfU97u/uze1Omyp2hOIVhUyEJxTGZgpGGOewptcDu32+2
98
+ 0et5WFKqqNorr/y08zAOdcyL3Xp+sHB1LY0CX+U=
99
+ =qdTI
100
+ -----END PGP PRIVATE KEY BLOCK-----
metadata ADDED
@@ -0,0 +1,142 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: mavenlink-git-scripts
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.5.0
5
+ platform: ruby
6
+ authors:
7
+ - Pivotal Labs, Mavenlink
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2016-06-30 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: bundler
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: unindent
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: gem-release
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ description: These scripts are helpers for managing developer workflow when using
84
+ Git repos hosted on GitHub.
85
+ email:
86
+ - gems@pivotallabs.com, dev@mavenlink.com
87
+ executables:
88
+ - git-about
89
+ - git-pair
90
+ - git-pair-commit
91
+ - git-project
92
+ - git-superpull
93
+ extensions: []
94
+ extra_rdoc_files: []
95
+ files:
96
+ - ".gitignore"
97
+ - ".rspec"
98
+ - ".travis.yml"
99
+ - CHANGELOG.md
100
+ - Gemfile
101
+ - MIT.LICENSE
102
+ - README.md
103
+ - Rakefile
104
+ - bin/git-about
105
+ - bin/git-pair
106
+ - bin/git-pair-commit
107
+ - bin/git-project
108
+ - bin/git-superpull
109
+ - lib/pivotal_git_scripts/git_pair.rb
110
+ - lib/pivotal_git_scripts/version.rb
111
+ - pivotal_git_scripts.gemspec
112
+ - spec/cli_spec.rb
113
+ - spec/git_pair_spec.rb
114
+ - spec/gpg-keys.asc
115
+ homepage: http://github.com/jrolfs/git-scripts
116
+ licenses:
117
+ - MIT
118
+ metadata: {}
119
+ post_install_message:
120
+ rdoc_options: []
121
+ require_paths:
122
+ - lib
123
+ required_ruby_version: !ruby/object:Gem::Requirement
124
+ requirements:
125
+ - - ">="
126
+ - !ruby/object:Gem::Version
127
+ version: '0'
128
+ required_rubygems_version: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
133
+ requirements: []
134
+ rubyforge_project: pivotal_git_scripts
135
+ rubygems_version: 2.5.1
136
+ signing_key:
137
+ specification_version: 4
138
+ summary: Developer Git workflow convenience scripts
139
+ test_files:
140
+ - spec/cli_spec.rb
141
+ - spec/git_pair_spec.rb
142
+ - spec/gpg-keys.asc