#!/usr/bin/env ruby branches = `git branch --sort=committerdate | awk '{print $1}'`.split("\n").reject{|l| l == '*'} branches.each_with_index{|b, i| puts "#{i < 10 ? ' ' : ''}""#{i} - #{b}" } puts "\n" print 'type branch number: ' target_num = gets.chomp unless target_num.length == 0 system("git checkout #{branches[target_num.to_i]}") end