Class: LegitGit::Installation
- Inherits:
-
Object
- Object
- LegitGit::Installation
- Defined in:
- lib/legit-the-git/command_line.rb
Instance Method Summary collapse
-
#initialize(repo_path) ⇒ Installation
constructor
Refactor!.
- #install ⇒ Object
- #uninstall ⇒ Object
Constructor Details
#initialize(repo_path) ⇒ Installation
Refactor!
50 51 52 53 54 55 56 |
# File 'lib/legit-the-git/command_line.rb', line 50 def initialize(repo_path) @repository = Grit::Repo.new(repo_path) @accurev_repo = File.join(repo_path, '.git', 'accurev.git') @accurev_hooks = File.join(repo_path, '.git', 'accurev.git', 'hooks') @repo_hooks = File.join(repo_path, '.git', 'accurev.git', 'hooks') end |
Instance Method Details
#install ⇒ Object
58 59 60 61 62 63 64 65 66 |
# File 'lib/legit-the-git/command_line.rb', line 58 def install @repository.(@accurev_repo, :shared => false, :mirror => true) @repository.remote_add("accurev", @accurev_repo) FileUtils.mkdir_p([@accurev_hooks, @repo_hooks]) FileUtils.install(File.join(File.dirname(__FILE__), "hooks", "post-commit"), @repo_hooks, :mode => 0755) FileUtils.install(File.join(File.dirname(__FILE__), "hooks", "pre-receive"), @accurev_hooks, :mode => 0755) end |
#uninstall ⇒ Object
68 69 70 71 72 73 74 75 76 |
# File 'lib/legit-the-git/command_line.rb', line 68 def uninstall unless @repository.remotes.select {|r| r.name =~ /accurev/}.empty? git = Grit::Git.new(File.(File.join(Dir.pwd, '.git/'))) git.native(:remote, {}, 'rm', 'accurev') end FileUtils.rm_rf([@accurev_repo, File.join(@repo_hooks, "hooks", "post-commit")]) FileUtils.rm_rf([@accurev_repo, File.join(@repo_hooks, "hooks", "pre-receive")]) end |