Module: GGSM::Hooks
- Included in:
- Submodule
- Defined in:
- lib/ggsm/hook/hooks.rb
Instance Method Summary collapse
- #check_hooks ⇒ Object
- #cp_files(target_path) ⇒ Object
- #cp_hooks(sub) ⇒ Object
- #install_billow ⇒ Object
- #update_hooks ⇒ Object
Instance Method Details
#check_hooks ⇒ Object
3 4 5 6 7 8 9 10 11 |
# File 'lib/ggsm/hook/hooks.rb', line 3 def check_hooks if update_hooks install_billow subs = get_submodule subs.each do |sub| cp_hooks(sub) end end end |
#cp_files(target_path) ⇒ Object
46 47 48 49 50 |
# File 'lib/ggsm/hook/hooks.rb', line 46 def cp_files(target_path) path = `gem which ggsm`.split('/ggsm.rb')[0] `cp #{path}/ggsm/hook/commit-msg #{target_path}/commit-msg` `cp #{path}/ggsm/hook/pre-commit #{target_path}/pre-commit` end |
#cp_hooks(sub) ⇒ Object
41 42 43 44 |
# File 'lib/ggsm/hook/hooks.rb', line 41 def cp_hooks(sub) target_path = ".git/modules/#{sub}/hooks" cp_files(target_path) end |
#install_billow ⇒ Object
13 14 15 16 |
# File 'lib/ggsm/hook/hooks.rb', line 13 def install_billow path = `gem which ggsm`.split('/ggsm.rb')[0] `sudo sh #{path}/res/install_billow.sh` end |
#update_hooks ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/ggsm/hook/hooks.rb', line 18 def update_hooks version = `ggsm v` ggsm_path = '.git/ggsm' unless File.exist?(ggsm_path) Dir.mkdir(ggsm_path) end config_path = "#{ggsm_path}/VERSION" target_path = '.git/hooks' if !File.exist?(config_path) || version != IO.read(config_path) cp_files(target_path) file = File.new(config_path, 'w') file << version file.close puts '已更新Hooks'.blue return true end false end |