Sha256: 7f753c649790116b8fd633388541aa63157441d739ebf84bebd4c170f69a6c48
Contents?: true
Size: 917 Bytes
Versions: 9
Compression:
Stored size: 917 Bytes
Contents
#!/usr/bin/env ruby #start a new git branch with latest changes from master require File.join(File.dirname(__FILE__), '..', 'lib', 'socialcast-git-extensions.rb') include Socialcast is_quiet = ARGV.delete("--quiet") || ARGV.delete("-q") tickets = tickets_from_arguments ARGV raise "JIRA ticket id is required to run this process" unless tickets.any? repo = Grit::Repo.new(Dir.pwd) remote_branches = repo.remotes.collect {|b| b.name.split('/').last } until branch_name = HighLine.ask("What would you like to name your branch?") {|q| q.validate = Proc.new { |branch| branch =~ /^[A-Za-z0-9\-_]+$/ && !remote_branches.include?(branch) } } end run_cmd 'git checkout master' run_cmd 'git pull' run_cmd "git checkout -b #{branch_name}" update_tickets tickets, :branch => branch_name start_tickets tickets run_cmd "socialcast share '#worklog starting work on #{branch_name} #scgitx'" unless is_quiet
Version data entries
9 entries across 9 versions & 1 rubygems