git-bundle 1.0.2 → 1.0.3
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/README.md +114 -20
- data/git-bundle.gemspec +5 -3
- data/lib/git_bundle/version.rb +1 -1
- metadata +7 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 72bdf46a0d1691d386a73789d3e409c7ffa568e1
|
4
|
+
data.tar.gz: 45e26b76656b3d9b64f4e0866c1482ab7d820571
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3dc6df327ce0f7efd7b1043329ff17dc1a9b71e06d478e02745a6fcfd12fa82eac3a2643141a2516bdf71836286bc822c90cae8fb54389314fca1c6b542bb7f4
|
7
|
+
data.tar.gz: d95a4aa59168ac53cfa95a24c7eb17d542ff3deada25c0baf6a62c1b72100d0b23001a44781250a7f473f5be0903091f2bda8c2fd9dba774ffbdf8c18fc5c1db
|
data/README.md
CHANGED
@@ -1,41 +1,135 @@
|
|
1
|
-
#
|
1
|
+
# Gitb
|
2
2
|
|
3
|
-
|
3
|
+
This gem simplifies working with [gems from git repositories](http://bundler.io/v1.5/git.html):
|
4
|
+
```ruby
|
5
|
+
gem 'forum_engine', git: 'https://github.com/your_name/forum_engine.git', branch: :master
|
6
|
+
```
|
7
|
+
in combination with [local overrides](http://bundler.io/v1.5/git.html#local):
|
8
|
+
```shell
|
9
|
+
bundle config local.some_gem_or_rails_engine /path/to/local/git/repository
|
10
|
+
```
|
4
11
|
|
5
|
-
|
12
|
+
## Usage examples
|
6
13
|
|
7
|
-
|
14
|
+
Let's say you have a Rails application that uses two of your own reusable Rails engines called *forum_engine* and
|
15
|
+
*blog_engine*. This is how you include them in your Gemfile:
|
16
|
+
```ruby
|
17
|
+
gem 'forum_engine', git: 'https://github.com/your_name/forum_engine.git', branch: :master
|
18
|
+
gem 'blog_engine', git: 'https://github.com/your_name/blog_engine.git', branch: :master
|
19
|
+
```
|
8
20
|
|
9
|
-
|
21
|
+
You then add local overrides to your bundle config so that you can work on them like you would work on your main Rails
|
22
|
+
application: any code change takes immediate effect.
|
23
|
+
```
|
24
|
+
bundle config local.some_gem_or_rails_engine /path/to/forum/git/repository
|
25
|
+
bundle config local.some_gem_or_rails_engine /path/to/blog/git/repository
|
26
|
+
```
|
10
27
|
|
11
|
-
|
12
|
-
|
28
|
+
This gem will make the following scenarios easier and quicker:
|
29
|
+
|
30
|
+
**1. Performing the same git command on all local overrides in addition to the main application.**
|
31
|
+
|
32
|
+
Gitb will relay any command and arguments you pass it to all local override repositories in addition to the main
|
33
|
+
repository. In other words a **gitb pull** will run a **git pull** in all repositories:
|
13
34
|
```
|
35
|
+
=== forum_engine (master)
|
36
|
+
Already up-to-date.
|
14
37
|
|
15
|
-
|
38
|
+
=== blog_engine (master)
|
39
|
+
remote: Counting objects: 72, done.
|
40
|
+
remote: Compressing objects: 100% (53/53), done.
|
41
|
+
remote: Total 72 (delta 16), reused 61 (delta 9), pack-reused 0
|
42
|
+
Unpacking objects: 100% (72/72), done.
|
16
43
|
|
17
|
-
|
44
|
+
=== your-rails-application (master)
|
45
|
+
Already up-to-date.
|
46
|
+
```
|
18
47
|
|
19
|
-
|
48
|
+
Another example is a **gitb checkout release** will run **git checkout release** in all repositories:
|
49
|
+
```
|
50
|
+
=== forum_engine (master)
|
51
|
+
Switched to branch 'master'
|
52
|
+
Your branch is up-to-date with 'origin/master'.
|
53
|
+
|
54
|
+
=== blog_engine (master)
|
55
|
+
Switched to branch 'master'
|
56
|
+
Your branch is ahead of 'origin/master' by 2 commits.
|
57
|
+
(use "git push" to publish your local commits)
|
58
|
+
|
59
|
+
=== your-rails-application (master)
|
60
|
+
Switched to branch 'master'
|
61
|
+
Your branch is up-to-date with 'origin/master'.
|
62
|
+
```
|
20
63
|
|
21
|
-
|
64
|
+
**2. Updating Gemfile.lock when pushing changes.**
|
22
65
|
|
23
|
-
|
66
|
+
When you want to commit and push changes the standard process is:
|
67
|
+
* commit the engine git repositories first.
|
68
|
+
* run *bundle install* on the main application so that it updates the Gemfile.lock with the new git revisions (shown
|
69
|
+
below).
|
70
|
+
* Add the Gemfile.lock to a commit and push the main application commits.
|
71
|
+
```
|
72
|
+
GIT
|
73
|
+
remote: https://github.com/your_name/forum_engine.git
|
74
|
+
revision: b9270e61abb89e1ff77fb8cfacb463e4d04388ad
|
75
|
+
branch: master
|
76
|
+
```
|
24
77
|
|
25
|
-
|
78
|
+
With this gem you don't need to run *bundle install* to update the Gemfile.lock yourself. When you run a push command
|
79
|
+
it will detect that your Gemfile.lock needs to be updated, run *bundle install*, add the Gemfile.lock to a new commit
|
80
|
+
with an appropriate commit message and push it with your other commits. This is what it looks like if you run **gitb push** in
|
81
|
+
the main application:
|
26
82
|
|
27
|
-
|
83
|
+
```
|
84
|
+
=== forum_engine (master)
|
85
|
+
Counting objects: 11, done.
|
86
|
+
Delta compression using up to 4 threads.
|
87
|
+
Compressing objects: 100% (13/13), done.
|
88
|
+
Writing objects: 100% (13/13), 2.42 KiB | 0 bytes/s, done.
|
89
|
+
Total 11 (delta 6), reused 0 (delta 0)
|
90
|
+
ba4b3bf..ca4f753 master -> master
|
91
|
+
|
92
|
+
=== blog_engine (master)
|
93
|
+
Counting objects: 4, done.
|
94
|
+
Delta compression using up to 6 threads.
|
95
|
+
Compressing objects: 100% (4/4), done.
|
96
|
+
Writing objects: 100% (5/5), 2.42 KiB | 0 bytes/s, done.
|
97
|
+
Total 11 (delta 6), reused 0 (delta 0)
|
98
|
+
ac1b3bf..b4bf753 master -> master
|
99
|
+
|
100
|
+
=== your-rails-application (master)
|
101
|
+
Local gems were updated. Building new Gemfile.lock with bundle install.
|
102
|
+
|
103
|
+
Counting objects: 13, done.
|
104
|
+
Delta compression using up to 8 threads.
|
105
|
+
Compressing objects: 100% (12/12), done.
|
106
|
+
Writing objects: 100% (13/13), 2.32 KiB | 0 bytes/s, done.
|
107
|
+
Total 13 (delta 6), reused 0 (delta 0)
|
108
|
+
ce2b3bf..f0bf753 master -> master
|
109
|
+
```
|
28
110
|
|
29
|
-
|
111
|
+
## Installation
|
30
112
|
|
31
|
-
|
113
|
+
You can install it yourself:
|
32
114
|
|
33
|
-
|
115
|
+
```
|
116
|
+
gem install git-bundle
|
117
|
+
```
|
34
118
|
|
35
|
-
|
119
|
+
Or alternatively add this line to your application's Gemfile:
|
36
120
|
|
121
|
+
```ruby
|
122
|
+
group :development do
|
123
|
+
gem 'git-bundle'
|
124
|
+
end
|
125
|
+
```
|
37
126
|
|
38
|
-
|
127
|
+
Both should allow you to use the **gitb** command anywhere
|
39
128
|
|
40
|
-
|
129
|
+
## Contributing
|
130
|
+
|
131
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/EPI-USE-Labs/git-bundle.
|
132
|
+
|
133
|
+
## License
|
41
134
|
|
135
|
+
The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).
|
data/git-bundle.gemspec
CHANGED
@@ -8,9 +8,11 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.version = GitBundle::VERSION
|
9
9
|
spec.authors = ['Pierre Pretorius']
|
10
10
|
spec.email = ['pierre@labs.epiuse.com']
|
11
|
-
|
12
|
-
spec.
|
13
|
-
|
11
|
+
spec.summary = %q{Simplify working with local gems/engines overrides and git}
|
12
|
+
spec.description = %q{This gem simplifies working with gems from git repositories:
|
13
|
+
gem 'forum_engine', git: 'https://github.com/your_name/forum_engine.git', branch: :master
|
14
|
+
in combination with local overrides:
|
15
|
+
bundle config local.some_gem_or_rails_engine /path/to/local/git/repository}
|
14
16
|
spec.homepage = 'https://github.com/EPI-USE-Labs/git-bundle'
|
15
17
|
spec.license = 'MIT'
|
16
18
|
|
data/lib/git_bundle/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: git-bundle
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pierre Pretorius
|
@@ -24,8 +24,11 @@ dependencies:
|
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.12'
|
27
|
-
description:
|
28
|
-
|
27
|
+
description: |-
|
28
|
+
This gem simplifies working with gems from git repositories:
|
29
|
+
gem 'forum_engine', git: 'https://github.com/your_name/forum_engine.git', branch: :master
|
30
|
+
in combination with local overrides:
|
31
|
+
bundle config local.some_gem_or_rails_engine /path/to/local/git/repository
|
29
32
|
email:
|
30
33
|
- pierre@labs.epiuse.com
|
31
34
|
executables:
|
@@ -71,5 +74,5 @@ rubyforge_project:
|
|
71
74
|
rubygems_version: 2.5.1
|
72
75
|
signing_key:
|
73
76
|
specification_version: 4
|
74
|
-
summary:
|
77
|
+
summary: Simplify working with local gems/engines overrides and git
|
75
78
|
test_files: []
|