class Middleman::Deploy::Strategies::Git::Submodule

Public Instance Methods

process() click to toggle source
# File lib/middleman-deploy/strategies/git/submodule.rb, line 6
def process
  Dir.chdir(self.build_dir) do
    checkout_branch
    pull_submodule
    commit_branch
  end

  commit_submodule
end

Private Instance Methods

commit_submodule() click to toggle source
# File lib/middleman-deploy/strategies/git/submodule.rb, line 18
def commit_submodule
  current_branch  = `git rev-parse --abbrev-ref HEAD`
  message         = add_signature_to_commit_message('Deployed')

  `git add #{self.build_dir}`
  `git commit --allow-empty -m "#{message}"`
  `git push origin #{current_branch}`
end
pull_submodule() click to toggle source
# File lib/middleman-deploy/strategies/git/submodule.rb, line 27
def pull_submodule
  `git fetch`
  `git stash`
  `git rebase #{self.remote}/#{self.branch}`
  `git stash pop`

  if $?.exitstatus == 1
    puts "Can't deploy! Please resolve conflicts. Then process to manual commit and push on #{self.branch} branch."
    exit
  end
end