lib/ refactoring. Module Gitlabhq renamed to Gitlab

This commit is contained in:
randx 2012-05-26 13:37:49 +03:00
parent 8ceb94081a
commit 3272620f72
20 changed files with 87 additions and 85 deletions

41
lib/gitlab/satellite.rb Normal file
View file

@ -0,0 +1,41 @@
module Gitlab
class Satellite
PARKING_BRANCH = "__parking_branch"
attr_accessor :project
def initialize project
self.project = project
end
def create
`git clone #{project.url_to_repo} #{path}`
end
def path
File.join(Rails.root, "tmp", "repo_satellites", project.path)
end
def exists?
File.exists? path
end
#will be deleted all branches except PARKING_BRANCH
def clear
Dir.chdir(path) do
heads = Grit::Repo.new(".").heads.map{|head| head.name}
if heads.include? PARKING_BRANCH
`git checkout #{PARKING_BRANCH}`
else
`git checkout -b #{PARKING_BRANCH}`
end
heads.delete(PARKING_BRANCH)
heads.each do |head|
`git branch -D #{head}`
end
end
end
end
end