class ProjectReleaser::Project::Releaser
Public Class Methods
new(git)
click to toggle source
# File lib/project_releaser/project/releaser.rb, line 6 def initialize(git) @git = git end
Public Instance Methods
release(version)
click to toggle source
# File lib/project_releaser/project/releaser.rb, line 10 def release(version) @git.returning_to_current_branch do |git| @git = git update_local_branches merge_branches if branches.size > 1 push_release version end end
Private Instance Methods
branches()
click to toggle source
# File lib/project_releaser/project/releaser.rb, line 38 def branches @branches ||= begin branches = [:master] branches += [:develop] if @git.has_branch? :develop branches end end
merge_branches()
click to toggle source
# File lib/project_releaser/project/releaser.rb, line 26 def merge_branches logger.info "merging 'develop' into 'master'" @git.merge :master, :develop logger.info "merging back 'master' into 'develop'" @git.merge :develop, :master end
push_release(version)
click to toggle source
# File lib/project_releaser/project/releaser.rb, line 33 def push_release(version) logger.info "pushing new release `#{version}` to 'master'" @git.push :master, version end
update_local_branches()
click to toggle source
# File lib/project_releaser/project/releaser.rb, line 21 def update_local_branches logger.info 'updating local branches' @git.pull branches end