module Atlassian::Stash::Git
Constants
- DEFAULT_REMOTE
Public Instance Methods
create_git_alias()
click to toggle source
# File lib/atlassian/stash/git.rb, line 56 def create_git_alias %x(git config --global alias.create-pull-request "\!sh -c 'stash pull-request \\$0 \\$@'") end
ensure_within_git!() { || ... }
click to toggle source
# File lib/atlassian/stash/git.rb, line 48 def ensure_within_git! if is_in_git_repository? yield else raise "fatal: Not a git repository" end end
get_branches()
click to toggle source
# File lib/atlassian/stash/git.rb, line 13 def get_branches() all = %x{git branch --no-color -a}.gsub("*","").gsub(" ", "").split("\n") all.select{|x| not x.include? "->"} end
get_current_branch()
click to toggle source
# File lib/atlassian/stash/git.rb, line 9 def get_current_branch %x(git symbolic-ref HEAD)[/refs\/heads\/(.*)/, 1] end
get_remote(branch = nil)
click to toggle source
# File lib/atlassian/stash/git.rb, line 31 def get_remote(branch = nil) remote_branch = %x(git rev-parse --abbrev-ref --symbolic-full-name #{branch}@{u} 2>/dev/null) remote = remote_branch.split('/').first remote == "" ? nil : remote end
get_remote_url(remote=nil)
click to toggle source
# File lib/atlassian/stash/git.rb, line 37 def get_remote_url(remote=nil) remotes = get_remotes return nil if remotes.empty? remote = DEFAULT_REMOTE if remote.nil? || remote.empty? origin = remotes.split("\n").collect { |r| r.strip }.grep(/^#{remote}.*\(push\)$/).first return nil if origin.nil? URI.extract(origin).first end
get_remotes()
click to toggle source
# File lib/atlassian/stash/git.rb, line 27 def get_remotes %x(git remote -v) end
get_repo_root_directory()
click to toggle source
# File lib/atlassian/stash/git.rb, line 60 def get_repo_root_directory %x(git rev-parse --show-toplevel) end
is_branch?(match)
click to toggle source
# File lib/atlassian/stash/git.rb, line 18 def is_branch?(match) all = get_branches not all.select{|x| x == match}.empty? end
is_in_git_repository?()
click to toggle source
# File lib/atlassian/stash/git.rb, line 23 def is_in_git_repository? system('git rev-parse') end