class GitIam::Iam
Public Class Methods
local_or_remote(setting)
click to toggle source
# File lib/git-iam/iam.rb, line 23 def self.local_or_remote(setting) value = `git config --local #{setting}`.chomp if value.empty? value = `git config --global #{setting}`.chomp # + ' (global)' # interferes when reseting origin end value end
remote_origin()
click to toggle source
# File lib/git-iam/iam.rb, line 19 def self.remote_origin local_or_remote 'remote.origin.url' end
reset()
click to toggle source
# File lib/git-iam/iam.rb, line 58 def self.reset `git config --local --unset user.name` `git config --local --unset user.email` set_origin_account user_name end
set_origin_account(account)
click to toggle source
# File lib/git-iam/iam.rb, line 49 def self.set_origin_account(account) segments = remote_origin.split('/') segments[-2] = account origin_url = segments.join('/') `git remote set-url origin #{origin_url}` end
set_user_config(args)
click to toggle source
# File lib/git-iam/iam.rb, line 33 def self.set_user_config(args) user_name = args.shift user_email = args.shift self.set_user_name user_name self.set_user_email user_email unless user_email.nil? self.set_origin_account user_name end
set_user_email(user_email)
click to toggle source
# File lib/git-iam/iam.rb, line 45 def self.set_user_email(user_email) `git config --local user.email #{user_email}` end
set_user_name(user_name)
click to toggle source
# File lib/git-iam/iam.rb, line 41 def self.set_user_name(user_name) `git config --local user.name #{user_name}` end
user_email()
click to toggle source
# File lib/git-iam/iam.rb, line 15 def self.user_email local_or_remote 'user.email' end
user_name()
click to toggle source
# File lib/git-iam/iam.rb, line 11 def self.user_name local_or_remote 'user.name' end
who()
click to toggle source
# File lib/git-iam/iam.rb, line 3 def self.who { 'user.name' => user_name, 'user.email' => user_email, 'remote.origin.url' => remote_origin } end