Module: GitPair::Config

Extended by:
Config
Included in:
Config
Defined in:
lib/git-pair/config.rb

Instance Method Summary collapse

Instance Method Details

#add_author(author) ⇒ Object



13
14
15
16
17
# File 'lib/git-pair/config.rb', line 13

def add_author(author)
  unless Author.exists?(author)
    `git config --global --add git-pair.authors "#{author.name} <#{author.email}>"`
  end
end

#all_author_stringsObject



5
6
7
# File 'lib/git-pair/config.rb', line 5

def all_author_strings
  `git config --global --get-all git-pair.authors`.split("\n")
end

#current_authorObject



37
38
39
# File 'lib/git-pair/config.rb', line 37

def current_author
  `git config --get user.name`.strip
end

#current_emailObject



41
42
43
# File 'lib/git-pair/config.rb', line 41

def current_email
  `git config --get user.email`.strip
end

#default_emailObject



33
34
35
# File 'lib/git-pair/config.rb', line 33

def default_email
  `git config --global --get user.email`.strip
end

#pair_emailObject



45
46
47
# File 'lib/git-pair/config.rb', line 45

def pair_email
  `git config --global --get git-pair.email`.strip
end

#remove_author(name) ⇒ Object



19
20
21
22
# File 'lib/git-pair/config.rb', line 19

def remove_author(name)
  `git config --global --unset-all git-pair.authors "^#{name} <"`
  `git config --global --remove-section git-pair` if all_author_strings.empty?
end

#resetObject



29
30
31
# File 'lib/git-pair/config.rb', line 29

def reset
  `git config --remove-section user`
end

#set_pair_email(email) ⇒ Object



49
50
51
# File 'lib/git-pair/config.rb', line 49

def set_pair_email(email)
  `git config --global git-pair.email "#{email}"`
end

#switch(authors) ⇒ Object



24
25
26
27
# File 'lib/git-pair/config.rb', line 24

def switch(authors)
  `git config user.name "#{authors.map { |a| a.name }.join(' & ')}"`
  `git config user.email "#{Author.email_address_for(authors)}"`
end