class Git::Daily::Init
Public Instance Methods
help()
click to toggle source
# File lib/git-daily/command/init.rb, line 12 def help "init\tInitialize git daily" end
option()
click to toggle source
# File lib/git-daily/command/init.rb, line 8 def option OptionParser.new end
run()
click to toggle source
# File lib/git-daily/command/init.rb, line 16 def run r = `git config --bool gitdaily.init` if r.chomp == "true" # initialized repo return nil end remotes = `git config --list`.split(/\n/).select {|a| a[/^remote\.([^\.]+)\.url/] } if remotes.empty? raise "don't have remote repository" end remotes.map! {|r| r[/^remote\.([^\.]+)\.url=(.*)/, 1] } selected_url = nil if remotes.size >= 2 puts "Choose your remote url:" i = 0 remotes.each do |v| puts " #{i}: #{v}" i += 1 end print " > " n = gets.to_i selected_url = remotes[n] else selected_url = remotes[0] end r = `git config gitdaily.remote #{selected_url}` puts "Your remote is [#{selected_url}]" Git::Daily.application.remote = selected_url # master branch print "Name master branch [master]: " master = gets.strip if master.empty? master = "master" end `git config gitdaily.master #{master}` # develop branch print "Name develop branch [develop]: " develop = gets.strip if develop.empty? develop = "develop" end `git config gitdaily.develop #{develop}` unless Command.has_branch? develop remote = Command.remote if remote and Command.has_remote_branch?(remote, develop) `git checkout #{develop}` else `git checkout -b #{develop}` if remote `git push #{remote} #{develop}` end end end # initialized `git config gitdaily.init true` puts puts "git-daily completed to initialize." selected_url end
usage()
click to toggle source
# File lib/git-daily/command/init.rb, line 84 def usage <<-EOS Usage: git daily init EOS end