#!/usr/bin/env ruby require "set" remotes = Set.new `git remote -v`.each_line do |line| if line =~ /^(\S+)\s+(\S+)\s+\(/ remote_name, url = $1, $2 unless remotes.include?(remote_name) new_url = url.sub(%r{^ssh://gitp?@holtrop\.mooo\.com/}, "git@git.jholtrop.com:josh/") new_url = new_url.sub(%r{^gitp?@holtrop\.mooo\.com:}, "git@git.jholtrop.com:josh/") if new_url != url command = %W[git remote set-url #{remote_name} #{new_url}] puts command.join(" ") system(*command) end remotes << remote_name end end end