repo_manager 0.7.1
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.
- data/.gemfiles +115 -0
- data/.gitattributes +1 -0
- data/.gitignore +7 -0
- data/.rspec +3 -0
- data/.yardopts +11 -0
- data/Gemfile +11 -0
- data/Gemfile.lock +99 -0
- data/Guardfile +63 -0
- data/HISTORY.markdown +12 -0
- data/LICENSE +20 -0
- data/README.markdown +192 -0
- data/Rakefile +94 -0
- data/TODO.markdown +15 -0
- data/VERSION +1 -0
- data/bin/repo +151 -0
- data/cucumber.yml +28 -0
- data/examples/pc_saved_game_backup/.gitignore +2 -0
- data/examples/pc_saved_game_backup/INSTALL.markdown +420 -0
- data/examples/pc_saved_game_backup/README.markdown +108 -0
- data/examples/pc_saved_game_backup/remote/.gitignore +2 -0
- data/examples/pc_saved_game_backup/repo_manager/Gemfile +12 -0
- data/examples/pc_saved_game_backup/repo_manager/Gemfile.lock +66 -0
- data/examples/pc_saved_game_backup/repo_manager/assets/.gitignore +2 -0
- data/examples/pc_saved_game_backup/repo_manager/features/support/aruba.rb +15 -0
- data/examples/pc_saved_game_backup/repo_manager/features/support/env.rb +11 -0
- data/examples/pc_saved_game_backup/repo_manager/features/support/steps.rb +3 -0
- data/examples/pc_saved_game_backup/repo_manager/features/tasks/update.feature +144 -0
- data/examples/pc_saved_game_backup/repo_manager/global/default/asset.conf +2 -0
- data/examples/pc_saved_game_backup/repo_manager/repo.conf +64 -0
- data/examples/pc_saved_game_backup/repo_manager/tasks/.gitignore +0 -0
- data/examples/pc_saved_game_backup/repo_manager/tasks/remote.rb +57 -0
- data/examples/pc_saved_game_backup/repo_manager/tasks/update.rb +65 -0
- data/examples/pc_saved_game_backup/saved_games/hearts/save1 +1 -0
- data/examples/pc_saved_game_backup/saved_games/hearts/save2 +1 -0
- data/examples/pc_saved_game_backup/saved_games/mines/my_profile.ini +1 -0
- data/examples/pc_saved_game_backup/saved_games/mines/saves/save1 +1 -0
- data/examples/pc_saved_game_backup/saved_games/mines/saves/save2 +1 -0
- data/features/actions/git.feature +296 -0
- data/features/actions/help.feature +53 -0
- data/features/actions/list.feature +624 -0
- data/features/actions/path.feature +195 -0
- data/features/actions/status.feature +261 -0
- data/features/actions/task.feature +127 -0
- data/features/assets/configuration.feature +204 -0
- data/features/assets/rendering.feature +42 -0
- data/features/assets/user_attributes.feature +98 -0
- data/features/bin.feature +42 -0
- data/features/logger.feature +218 -0
- data/features/settings.feature +240 -0
- data/features/support/aruba.rb +15 -0
- data/features/support/env.rb +11 -0
- data/features/support/steps.rb +3 -0
- data/features/tasks/add/asset.feature +178 -0
- data/features/tasks/generate/init.feature +56 -0
- data/lib/repo_manager.rb +36 -0
- data/lib/repo_manager/actions.rb +8 -0
- data/lib/repo_manager/actions/action_helper.rb +39 -0
- data/lib/repo_manager/actions/app_action.rb +30 -0
- data/lib/repo_manager/actions/base_action.rb +296 -0
- data/lib/repo_manager/actions/git_action.rb +113 -0
- data/lib/repo_manager/actions/help_action.rb +52 -0
- data/lib/repo_manager/actions/list_action.rb +123 -0
- data/lib/repo_manager/actions/path_action.rb +22 -0
- data/lib/repo_manager/actions/status_action.rb +192 -0
- data/lib/repo_manager/actions/task_action.rb +71 -0
- data/lib/repo_manager/app.rb +116 -0
- data/lib/repo_manager/assets.rb +3 -0
- data/lib/repo_manager/assets/app_asset.rb +15 -0
- data/lib/repo_manager/assets/asset_accessors.rb +67 -0
- data/lib/repo_manager/assets/asset_configuration.rb +137 -0
- data/lib/repo_manager/assets/asset_manager.rb +72 -0
- data/lib/repo_manager/assets/base_asset.rb +199 -0
- data/lib/repo_manager/assets/repo_asset.rb +30 -0
- data/lib/repo_manager/core.rb +2 -0
- data/lib/repo_manager/core/array.rb +21 -0
- data/lib/repo_manager/core/hash.rb +83 -0
- data/lib/repo_manager/errors.rb +10 -0
- data/lib/repo_manager/extensions/hash.rb +86 -0
- data/lib/repo_manager/git.rb +2 -0
- data/lib/repo_manager/git/lib.rb +69 -0
- data/lib/repo_manager/git/status.rb +196 -0
- data/lib/repo_manager/logger.rb +39 -0
- data/lib/repo_manager/settings.rb +98 -0
- data/lib/repo_manager/tasks.rb +3 -0
- data/lib/repo_manager/tasks/add/asset.rb +213 -0
- data/lib/repo_manager/tasks/generate/init.rb +42 -0
- data/lib/repo_manager/tasks/generate/templates/config/repo.conf.tt +61 -0
- data/lib/repo_manager/tasks/generate/templates/init/assets/.gitignore +0 -0
- data/lib/repo_manager/tasks/generate/templates/init/global/default/asset.conf +2 -0
- data/lib/repo_manager/tasks/generate/templates/init/tasks/.gitignore +0 -0
- data/lib/repo_manager/tasks/task_manager.rb +166 -0
- data/lib/repo_manager/tasks/thor_helper.rb +29 -0
- data/lib/repo_manager/test/asset_steps.rb +19 -0
- data/lib/repo_manager/test/base_steps.rb +152 -0
- data/lib/repo_manager/test/repo_api.rb +41 -0
- data/lib/repo_manager/test/repo_steps.rb +83 -0
- data/lib/repo_manager/test/test_api.rb +88 -0
- data/lib/repo_manager/views.rb +2 -0
- data/lib/repo_manager/views/app_view.rb +15 -0
- data/lib/repo_manager/views/base_view.rb +137 -0
- data/lib/repo_manager/views/templates/css/basic.css +26 -0
- data/lib/repo_manager/views/templates/default.erb +40 -0
- data/lib/repo_manager/views/templates/default.slim +37 -0
- data/lib/repo_manager/views/view_helper.rb +55 -0
- data/repo_manager.gemspec +75 -0
- data/spec/basic_app/actions/action_helper_spec.rb +54 -0
- data/spec/basic_app/assets/base_asset_spec.rb +210 -0
- data/spec/basic_app/core_spec.rb +78 -0
- data/spec/basic_app/settings_spec.rb +64 -0
- data/spec/basic_app/views/view_helper_spec.rb +28 -0
- data/spec/basic_gem/aruba_helper_spec.rb +33 -0
- data/spec/basic_gem/basic_gem_spec.rb +84 -0
- data/spec/basic_gem/gemspec_spec.rb +68 -0
- data/spec/repo_manager/git_spec.rb +31 -0
- data/spec/spec_helper.rb +25 -0
- metadata +472 -0
data/.gemfiles
ADDED
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
.gemfiles
|
|
2
|
+
.gitattributes
|
|
3
|
+
.gitignore
|
|
4
|
+
.rspec
|
|
5
|
+
.yardopts
|
|
6
|
+
Gemfile
|
|
7
|
+
Gemfile.lock
|
|
8
|
+
Guardfile
|
|
9
|
+
HISTORY.markdown
|
|
10
|
+
LICENSE
|
|
11
|
+
README.markdown
|
|
12
|
+
Rakefile
|
|
13
|
+
TODO.markdown
|
|
14
|
+
VERSION
|
|
15
|
+
bin/repo
|
|
16
|
+
cucumber.yml
|
|
17
|
+
examples/pc_saved_game_backup/.gitignore
|
|
18
|
+
examples/pc_saved_game_backup/INSTALL.markdown
|
|
19
|
+
examples/pc_saved_game_backup/README.markdown
|
|
20
|
+
examples/pc_saved_game_backup/remote/.gitignore
|
|
21
|
+
examples/pc_saved_game_backup/repo_manager/Gemfile
|
|
22
|
+
examples/pc_saved_game_backup/repo_manager/Gemfile.lock
|
|
23
|
+
examples/pc_saved_game_backup/repo_manager/assets/.gitignore
|
|
24
|
+
examples/pc_saved_game_backup/repo_manager/features/support/aruba.rb
|
|
25
|
+
examples/pc_saved_game_backup/repo_manager/features/support/env.rb
|
|
26
|
+
examples/pc_saved_game_backup/repo_manager/features/support/steps.rb
|
|
27
|
+
examples/pc_saved_game_backup/repo_manager/features/tasks/update.feature
|
|
28
|
+
examples/pc_saved_game_backup/repo_manager/global/default/asset.conf
|
|
29
|
+
examples/pc_saved_game_backup/repo_manager/repo.conf
|
|
30
|
+
examples/pc_saved_game_backup/repo_manager/tasks/.gitignore
|
|
31
|
+
examples/pc_saved_game_backup/repo_manager/tasks/remote.rb
|
|
32
|
+
examples/pc_saved_game_backup/repo_manager/tasks/update.rb
|
|
33
|
+
examples/pc_saved_game_backup/saved_games/hearts/save1
|
|
34
|
+
examples/pc_saved_game_backup/saved_games/hearts/save2
|
|
35
|
+
examples/pc_saved_game_backup/saved_games/mines/my_profile.ini
|
|
36
|
+
examples/pc_saved_game_backup/saved_games/mines/saves/save1
|
|
37
|
+
examples/pc_saved_game_backup/saved_games/mines/saves/save2
|
|
38
|
+
features/actions/git.feature
|
|
39
|
+
features/actions/help.feature
|
|
40
|
+
features/actions/list.feature
|
|
41
|
+
features/actions/path.feature
|
|
42
|
+
features/actions/status.feature
|
|
43
|
+
features/actions/task.feature
|
|
44
|
+
features/assets/configuration.feature
|
|
45
|
+
features/assets/rendering.feature
|
|
46
|
+
features/assets/user_attributes.feature
|
|
47
|
+
features/bin.feature
|
|
48
|
+
features/logger.feature
|
|
49
|
+
features/settings.feature
|
|
50
|
+
features/support/aruba.rb
|
|
51
|
+
features/support/env.rb
|
|
52
|
+
features/support/steps.rb
|
|
53
|
+
features/tasks/add/asset.feature
|
|
54
|
+
features/tasks/generate/init.feature
|
|
55
|
+
lib/repo_manager.rb
|
|
56
|
+
lib/repo_manager/actions.rb
|
|
57
|
+
lib/repo_manager/actions/action_helper.rb
|
|
58
|
+
lib/repo_manager/actions/app_action.rb
|
|
59
|
+
lib/repo_manager/actions/base_action.rb
|
|
60
|
+
lib/repo_manager/actions/git_action.rb
|
|
61
|
+
lib/repo_manager/actions/help_action.rb
|
|
62
|
+
lib/repo_manager/actions/list_action.rb
|
|
63
|
+
lib/repo_manager/actions/path_action.rb
|
|
64
|
+
lib/repo_manager/actions/status_action.rb
|
|
65
|
+
lib/repo_manager/actions/task_action.rb
|
|
66
|
+
lib/repo_manager/app.rb
|
|
67
|
+
lib/repo_manager/assets.rb
|
|
68
|
+
lib/repo_manager/assets/app_asset.rb
|
|
69
|
+
lib/repo_manager/assets/asset_accessors.rb
|
|
70
|
+
lib/repo_manager/assets/asset_configuration.rb
|
|
71
|
+
lib/repo_manager/assets/asset_manager.rb
|
|
72
|
+
lib/repo_manager/assets/base_asset.rb
|
|
73
|
+
lib/repo_manager/assets/repo_asset.rb
|
|
74
|
+
lib/repo_manager/core.rb
|
|
75
|
+
lib/repo_manager/core/array.rb
|
|
76
|
+
lib/repo_manager/core/hash.rb
|
|
77
|
+
lib/repo_manager/errors.rb
|
|
78
|
+
lib/repo_manager/extensions/hash.rb
|
|
79
|
+
lib/repo_manager/git.rb
|
|
80
|
+
lib/repo_manager/git/lib.rb
|
|
81
|
+
lib/repo_manager/git/status.rb
|
|
82
|
+
lib/repo_manager/logger.rb
|
|
83
|
+
lib/repo_manager/settings.rb
|
|
84
|
+
lib/repo_manager/tasks.rb
|
|
85
|
+
lib/repo_manager/tasks/add/asset.rb
|
|
86
|
+
lib/repo_manager/tasks/generate/init.rb
|
|
87
|
+
lib/repo_manager/tasks/generate/templates/config/repo.conf.tt
|
|
88
|
+
lib/repo_manager/tasks/generate/templates/init/assets/.gitignore
|
|
89
|
+
lib/repo_manager/tasks/generate/templates/init/global/default/asset.conf
|
|
90
|
+
lib/repo_manager/tasks/generate/templates/init/tasks/.gitignore
|
|
91
|
+
lib/repo_manager/tasks/task_manager.rb
|
|
92
|
+
lib/repo_manager/tasks/thor_helper.rb
|
|
93
|
+
lib/repo_manager/test/asset_steps.rb
|
|
94
|
+
lib/repo_manager/test/base_steps.rb
|
|
95
|
+
lib/repo_manager/test/repo_api.rb
|
|
96
|
+
lib/repo_manager/test/repo_steps.rb
|
|
97
|
+
lib/repo_manager/test/test_api.rb
|
|
98
|
+
lib/repo_manager/views.rb
|
|
99
|
+
lib/repo_manager/views/app_view.rb
|
|
100
|
+
lib/repo_manager/views/base_view.rb
|
|
101
|
+
lib/repo_manager/views/templates/css/basic.css
|
|
102
|
+
lib/repo_manager/views/templates/default.erb
|
|
103
|
+
lib/repo_manager/views/templates/default.slim
|
|
104
|
+
lib/repo_manager/views/view_helper.rb
|
|
105
|
+
repo_manager.gemspec
|
|
106
|
+
spec/basic_app/actions/action_helper_spec.rb
|
|
107
|
+
spec/basic_app/assets/base_asset_spec.rb
|
|
108
|
+
spec/basic_app/core_spec.rb
|
|
109
|
+
spec/basic_app/settings_spec.rb
|
|
110
|
+
spec/basic_app/views/view_helper_spec.rb
|
|
111
|
+
spec/basic_gem/aruba_helper_spec.rb
|
|
112
|
+
spec/basic_gem/basic_gem_spec.rb
|
|
113
|
+
spec/basic_gem/gemspec_spec.rb
|
|
114
|
+
spec/repo_manager/git_spec.rb
|
|
115
|
+
spec/spec_helper.rb
|
data/.gitattributes
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
*.rb diff=ruby
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/.yardopts
ADDED
data/Gemfile
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
source "http://rubygems.org"
|
|
2
|
+
|
|
3
|
+
# Specify your gem's dependencies in the .gemspec file
|
|
4
|
+
gemspec
|
|
5
|
+
|
|
6
|
+
group :development do
|
|
7
|
+
gem 'libnotify', :platforms => :ruby # MRI, Rubinius but not Windows
|
|
8
|
+
end
|
|
9
|
+
|
|
10
|
+
# Platform specific supplement to .gemspec
|
|
11
|
+
gem "win32console", :platforms => [:mingw, :mswin]
|
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
repo_manager (0.7.1)
|
|
5
|
+
chronic (>= 0.6.5)
|
|
6
|
+
git (= 1.2.5)
|
|
7
|
+
logging (>= 1.6.2)
|
|
8
|
+
mustache (>= 0.99.4)
|
|
9
|
+
slim (>= 1.0.4)
|
|
10
|
+
term-ansicolor (>= 1.0.4)
|
|
11
|
+
thor (~> 0.15.0)
|
|
12
|
+
|
|
13
|
+
GEM
|
|
14
|
+
remote: http://rubygems.org/
|
|
15
|
+
specs:
|
|
16
|
+
aruba (0.4.5)
|
|
17
|
+
bcat (>= 0.6.1)
|
|
18
|
+
childprocess (>= 0.1.9)
|
|
19
|
+
cucumber (>= 0.10.7)
|
|
20
|
+
rdiscount (>= 1.6.8)
|
|
21
|
+
rspec (>= 2.6.0)
|
|
22
|
+
bcat (0.6.2)
|
|
23
|
+
rack (~> 1.0)
|
|
24
|
+
builder (3.0.0)
|
|
25
|
+
childprocess (0.3.2)
|
|
26
|
+
ffi (~> 1.0.6)
|
|
27
|
+
chronic (0.6.7)
|
|
28
|
+
cucumber (1.2.1)
|
|
29
|
+
builder (>= 2.1.2)
|
|
30
|
+
diff-lcs (>= 1.1.3)
|
|
31
|
+
gherkin (~> 2.11.0)
|
|
32
|
+
json (>= 1.4.6)
|
|
33
|
+
diff-lcs (1.1.3)
|
|
34
|
+
ffi (1.0.11)
|
|
35
|
+
gherkin (2.11.1)
|
|
36
|
+
json (>= 1.4.6)
|
|
37
|
+
gherkin (2.11.1-x86-mingw32)
|
|
38
|
+
json (>= 1.4.6)
|
|
39
|
+
git (1.2.5)
|
|
40
|
+
guard (1.0.3)
|
|
41
|
+
ffi (>= 0.5.0)
|
|
42
|
+
thor (>= 0.14.6)
|
|
43
|
+
guard-cucumber (0.8.0)
|
|
44
|
+
cucumber (>= 1.2.0)
|
|
45
|
+
guard (>= 0.8.3)
|
|
46
|
+
guard-rspec (0.7.3)
|
|
47
|
+
guard (>= 0.10.0)
|
|
48
|
+
json (1.7.3)
|
|
49
|
+
libnotify (0.7.4)
|
|
50
|
+
ffi (~> 1.0.11)
|
|
51
|
+
little-plugger (1.1.3)
|
|
52
|
+
logging (1.7.2)
|
|
53
|
+
little-plugger (>= 1.1.3)
|
|
54
|
+
mustache (0.99.4)
|
|
55
|
+
rack (1.4.1)
|
|
56
|
+
rake (0.9.2.2)
|
|
57
|
+
rdiscount (1.6.8)
|
|
58
|
+
redcarpet (2.1.1)
|
|
59
|
+
rspec (2.10.0)
|
|
60
|
+
rspec-core (~> 2.10.0)
|
|
61
|
+
rspec-expectations (~> 2.10.0)
|
|
62
|
+
rspec-mocks (~> 2.10.0)
|
|
63
|
+
rspec-core (2.10.1)
|
|
64
|
+
rspec-expectations (2.10.0)
|
|
65
|
+
diff-lcs (~> 1.1.3)
|
|
66
|
+
rspec-mocks (2.10.1)
|
|
67
|
+
slim (1.2.2)
|
|
68
|
+
temple (~> 0.4.0)
|
|
69
|
+
tilt (~> 1.3.3)
|
|
70
|
+
temple (0.4.0)
|
|
71
|
+
term-ansicolor (1.0.7)
|
|
72
|
+
thor (0.15.3)
|
|
73
|
+
tilt (1.3.3)
|
|
74
|
+
win32console (1.3.2-x86-mingw32)
|
|
75
|
+
yard (0.8.2.1)
|
|
76
|
+
yard-cucumber (2.2.0)
|
|
77
|
+
cucumber (>= 0.7.5)
|
|
78
|
+
gherkin (>= 2.2.9)
|
|
79
|
+
yard (>= 0.8.1)
|
|
80
|
+
|
|
81
|
+
PLATFORMS
|
|
82
|
+
ruby
|
|
83
|
+
x86-mingw32
|
|
84
|
+
|
|
85
|
+
DEPENDENCIES
|
|
86
|
+
aruba (= 0.4.5)
|
|
87
|
+
bundler (>= 1.0.14)
|
|
88
|
+
cucumber (~> 1.0)
|
|
89
|
+
guard (= 1.0.3)
|
|
90
|
+
guard-cucumber (~> 0.8)
|
|
91
|
+
guard-rspec (~> 0.7)
|
|
92
|
+
libnotify
|
|
93
|
+
rake (>= 0.8.7)
|
|
94
|
+
redcarpet (>= 1.17.2)
|
|
95
|
+
repo_manager!
|
|
96
|
+
rspec (>= 2.6.0)
|
|
97
|
+
win32console
|
|
98
|
+
yard (>= 0.7.4)
|
|
99
|
+
yard-cucumber (>= 2.1.7)
|
data/Guardfile
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
require 'rbconfig'
|
|
2
|
+
WINDOWS = RbConfig::CONFIG['host_os'] =~ /msdos|mswin|win32|mingw/i unless defined?(WINDOWS)
|
|
3
|
+
|
|
4
|
+
notification :on
|
|
5
|
+
|
|
6
|
+
# @examples
|
|
7
|
+
#
|
|
8
|
+
# guard --group specs
|
|
9
|
+
# guard --group features
|
|
10
|
+
#
|
|
11
|
+
group :rspec do
|
|
12
|
+
guard 'rspec',
|
|
13
|
+
:all_after_pass => false,
|
|
14
|
+
:all_on_start => false,
|
|
15
|
+
#:cli => '--color --format nested --fail-fast',
|
|
16
|
+
:cli => '--color --format nested',
|
|
17
|
+
:version => 2 do
|
|
18
|
+
|
|
19
|
+
watch(%r{^spec/.+_spec\.rb$})
|
|
20
|
+
watch('spec/spec_helper.rb') { "spec" }
|
|
21
|
+
|
|
22
|
+
# ex: lib/app_name/views.rb -> spec/app_name/views_spec.rb
|
|
23
|
+
watch(%r{^lib/(.+)/(.+)\.rb$}) { |m| "spec/#{m[1]}/#{m[2]}_spec.rb" }
|
|
24
|
+
|
|
25
|
+
# ex: lib/app_name/views/view_helper.rb -> spec/app_name/views/view_helper_spec.rb
|
|
26
|
+
watch(%r{^lib/(.+)/(.+)/(.+)\.rb$}) { |m| "spec/#{m[1]}/#{m[2]}/#{m[3]}_spec.rb" }
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
group :cucumber do
|
|
31
|
+
|
|
32
|
+
opts = []
|
|
33
|
+
opts << ["--color"]
|
|
34
|
+
opts << ["--format pretty"]
|
|
35
|
+
opts << ["--strict"]
|
|
36
|
+
opts << ["-r features"]
|
|
37
|
+
opts << ["--no-profile"]
|
|
38
|
+
#opts << ["--tags @focus"]
|
|
39
|
+
opts << ["--tags ~@wip"]
|
|
40
|
+
opts << ["--tags ~@windows"] unless WINDOWS
|
|
41
|
+
opts << ["--tags ~@posix"] if WINDOWS
|
|
42
|
+
|
|
43
|
+
guard 'cucumber',
|
|
44
|
+
:cli => opts.join(" "),
|
|
45
|
+
:all_after_pass => false,
|
|
46
|
+
:all_on_start => false do
|
|
47
|
+
|
|
48
|
+
watch(%r{^features/.+\.feature$})
|
|
49
|
+
|
|
50
|
+
# actions
|
|
51
|
+
watch(%r{^lib/repoman/actions/(.+)_action.rb$}) { |m| "features/actions/#{m[1]}.feature" }
|
|
52
|
+
|
|
53
|
+
# assets
|
|
54
|
+
watch(%r{^lib/basic_app/assets/.+_asset.rb$}) { |m| "features/assets/configuration.feature features/assets/rendering.feature" }
|
|
55
|
+
watch(%r{^lib/basic_app/assets/asset_configuration.rb$}) { |m| "features/assets/configuration.feature" }
|
|
56
|
+
watch(%r{^lib/basic_app/assets/asset_accessors.rb$}) { |m| "features/assets/user_attributes.feature" }
|
|
57
|
+
|
|
58
|
+
# tasks
|
|
59
|
+
watch(%r{^lib/repoman/tasks/(.+)/(.+).rb$}) { |m| "features/tasks/#{m[1]}/#{m[2]}.feature" }
|
|
60
|
+
watch(%r{^lib/repoman/tasks/task_manager.rb$}) { "features/actions/ph.feature" }
|
|
61
|
+
|
|
62
|
+
end
|
|
63
|
+
end
|
data/HISTORY.markdown
ADDED
data/LICENSE
ADDED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
Copyright (c) 2012 GearheadForHire, LLC
|
|
2
|
+
|
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
|
4
|
+
a copy of this software and associated documentation files (the
|
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
|
9
|
+
the following conditions:
|
|
10
|
+
|
|
11
|
+
The above copyright notice and this permission notice shall be
|
|
12
|
+
included in all copies or substantial portions of the Software.
|
|
13
|
+
|
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.markdown
ADDED
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
RepoManager
|
|
2
|
+
===========
|
|
3
|
+
|
|
4
|
+
Command line interface (CLI) for batch management of multiple Git repositories.
|
|
5
|
+
|
|
6
|
+
Overview
|
|
7
|
+
--------
|
|
8
|
+
|
|
9
|
+
RepoManager is a wrapper for Git, the distributed version control system.
|
|
10
|
+
RepoManager's wrapper functions allow a single git command to be executed
|
|
11
|
+
across multiple git repositories.
|
|
12
|
+
|
|
13
|
+
For example, you have two git repositories named 'repo1' and 'repo2' and
|
|
14
|
+
you want to check the status of both working folders.
|
|
15
|
+
|
|
16
|
+
### without repo_manager
|
|
17
|
+
|
|
18
|
+
cd ~/workspace/delphi/repo1
|
|
19
|
+
git status
|
|
20
|
+
|
|
21
|
+
cd ~/workspace/delphi/repo2
|
|
22
|
+
git status
|
|
23
|
+
|
|
24
|
+
### with repo_manager
|
|
25
|
+
|
|
26
|
+
repo status
|
|
27
|
+
|
|
28
|
+
### suitable for
|
|
29
|
+
|
|
30
|
+
* Light weight mirroring of data across a network. That is a job for
|
|
31
|
+
rsync. Or is it? If you develop for multiple platforms across multiple
|
|
32
|
+
(virtual) machines rsync'ing may not be the best option. If you already
|
|
33
|
+
have everything tucked into git repositories, you can use a single
|
|
34
|
+
'repo pull' command to mirror all of your repositories to one location
|
|
35
|
+
for backup or reference.
|
|
36
|
+
|
|
37
|
+
### not suitable for
|
|
38
|
+
|
|
39
|
+
* Maintaining related source code repositories. There are suitable tools
|
|
40
|
+
for that including git's own 'git submodules',
|
|
41
|
+
[git-subtree](https://github.com/apenwarr/git-subtree), and
|
|
42
|
+
[GitSlave](http://gitslave.sourceforge.net/)
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
Getting started with RepoManager
|
|
46
|
+
--------------------------------
|
|
47
|
+
|
|
48
|
+
### installation
|
|
49
|
+
|
|
50
|
+
gem install repo_manager
|
|
51
|
+
|
|
52
|
+
### help
|
|
53
|
+
|
|
54
|
+
repo --help
|
|
55
|
+
repo --tasks
|
|
56
|
+
repo help generate:init
|
|
57
|
+
|
|
58
|
+
### generate configuration folder structure
|
|
59
|
+
|
|
60
|
+
cd ~/workspace
|
|
61
|
+
repo generate:init .repo_manager
|
|
62
|
+
|
|
63
|
+
generate:init output
|
|
64
|
+
|
|
65
|
+
init creating initial config file at '/home/robert/workspace/.repo_manager/repo.conf'
|
|
66
|
+
create .repo_manager/repo.conf
|
|
67
|
+
init creating initial file structure in '/home/robert/workspace/.repo_manager'
|
|
68
|
+
exist .repo_manager
|
|
69
|
+
create .repo_manager/.gitignore
|
|
70
|
+
create .repo_manager/assets/.gitignore
|
|
71
|
+
create .repo_manager/global/default/asset.conf
|
|
72
|
+
create .repo_manager/tasks/.gitignore
|
|
73
|
+
|
|
74
|
+
### generate individual repository configurations files
|
|
75
|
+
|
|
76
|
+
generate multiple config files by searching a folder, one level deep, for git repositories
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
repo generate:config . --filter=mutagem,basic_*,repo_manager
|
|
80
|
+
|
|
81
|
+
generate config output
|
|
82
|
+
|
|
83
|
+
collecting collecting top level folder names
|
|
84
|
+
configuring setting discovered asset configuration paths
|
|
85
|
+
comparing looking for existing asset names
|
|
86
|
+
comparing looking for existing asset paths
|
|
87
|
+
Discovered assets
|
|
88
|
+
found basic_gem path => './basic_gem'
|
|
89
|
+
found basic_website path => './basic_website'
|
|
90
|
+
found basic_assets path => './basic_assets'
|
|
91
|
+
found repo_manager path => './repo_manager'
|
|
92
|
+
found basic_app path => './basic_app'
|
|
93
|
+
found mutagem path => './mutagem'
|
|
94
|
+
found basic_rails path => './basic_rails'
|
|
95
|
+
|
|
96
|
+
Found 7 assets, write the configuration files (y/n)?
|
|
97
|
+
|
|
98
|
+
answer 'y'
|
|
99
|
+
|
|
100
|
+
creating repo_manager configuration file for basic_gem
|
|
101
|
+
creating repo_manager configuration file for basic_website
|
|
102
|
+
creating repo_manager configuration file for basic_assets
|
|
103
|
+
creating repo_manager configuration file for repo_manager
|
|
104
|
+
creating repo_manager configuration file for basic_app
|
|
105
|
+
creating repo_manager configuration file for mutagem
|
|
106
|
+
creating repo_manager configuration file for basic_rails
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
Example Usage - Managing game saves across multiple computers
|
|
110
|
+
-------------------------------------------------------------
|
|
111
|
+
|
|
112
|
+
See examples/pc_saved_game_backup/README.markdown
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
Bash completion
|
|
116
|
+
----------------
|
|
117
|
+
|
|
118
|
+
Handy functions for use under Bash. These work fine on Win32 using
|
|
119
|
+
Git-Bash.
|
|
120
|
+
|
|
121
|
+
* rcd: repo cd (change directory). Wrapper for 'cd', allows for simple cd
|
|
122
|
+
<repo name> to the working folder on the filesystem referenced by the 'path'
|
|
123
|
+
configuration variable.
|
|
124
|
+
* rpushd: repo pushd (push directory). Wrapper for 'pushd'.
|
|
125
|
+
|
|
126
|
+
|
|
127
|
+
vim ~/.bashrc
|
|
128
|
+
|
|
129
|
+
function rcd(){ cd "$(repo --match=ONE --no-color path $@)"; }
|
|
130
|
+
function rpushd(){ pushd "$(repo path --match=ONE --no-color $@)"; }
|
|
131
|
+
alias rpopd="popd"
|
|
132
|
+
|
|
133
|
+
# provide completion for repo names
|
|
134
|
+
function _repo_names()
|
|
135
|
+
{
|
|
136
|
+
local cur opts prev
|
|
137
|
+
COMPREPLY=()
|
|
138
|
+
cur="${COMP_WORDS[COMP_CWORD]}"
|
|
139
|
+
opts=`repo list --list=name --no-color`
|
|
140
|
+
|
|
141
|
+
COMPREPLY=( $(compgen -W "${opts}" -- ${cur}) )
|
|
142
|
+
return 0
|
|
143
|
+
}
|
|
144
|
+
complete -F _repo_names rcd rpushd repo
|
|
145
|
+
|
|
146
|
+
|
|
147
|
+
Rake tasks
|
|
148
|
+
----------
|
|
149
|
+
|
|
150
|
+
bundle exec rake -T
|
|
151
|
+
|
|
152
|
+
rake build # Build repo_manager-0.7.1.gem into the pkg directory
|
|
153
|
+
rake cucumber # Run Cucumber features
|
|
154
|
+
rake doc:clean # Remove generated documenation
|
|
155
|
+
rake doc:generate # Generate YARD Documentation
|
|
156
|
+
rake doc:undocumented # List undocumented objects
|
|
157
|
+
rake gemfiles # Generate .gemfiles via 'git ls-files'
|
|
158
|
+
rake install # Build and install repo_manager-0.7.1.gem into system gems
|
|
159
|
+
rake release # Create tag v0.7.1 and build and push repo_manager-0.7.1.gem to Rubygems
|
|
160
|
+
rake spec # Run RSpec
|
|
161
|
+
rake test # Run specs, both RSpec and Cucumber
|
|
162
|
+
|
|
163
|
+
|
|
164
|
+
Development Environment
|
|
165
|
+
-----------------------
|
|
166
|
+
|
|
167
|
+
RepoManager was originally cloned from [BasicApp](http://github.com/robertwahler/BasicApp).
|
|
168
|
+
|
|
169
|
+
all systems
|
|
170
|
+
|
|
171
|
+
cd ~/workspace
|
|
172
|
+
git clone https://github.com/robertwahler/repo_manager
|
|
173
|
+
cd repo_manager
|
|
174
|
+
|
|
175
|
+
gem install bundler
|
|
176
|
+
bundle
|
|
177
|
+
|
|
178
|
+
colored output on windows
|
|
179
|
+
|
|
180
|
+
gem install win32console
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
Autotesting with Guard
|
|
184
|
+
----------------------
|
|
185
|
+
|
|
186
|
+
bundle exec guard
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
Copyright
|
|
190
|
+
---------
|
|
191
|
+
|
|
192
|
+
Copyright (c) 2012 GearheadForHire, LLC. See [LICENSE](LICENSE) for details.
|