Module: GitLeft::Branches

Defined in:
lib/git_left/branches.rb

Class Method Summary collapse

Class Method Details

.branchesObject



31
32
33
34
35
36
37
# File 'lib/git_left/branches.rb', line 31

def self.branches
  @@skipped_branches ||= []
  @@deleted_branches ||= []

  @@all_branches = Git.open('.').branches.to_a
  @@all_branches.select { |b| !branches_to_omit.include?(b.name) }
end

.branches_to_omitObject



23
24
25
# File 'lib/git_left/branches.rb', line 23

def self.branches_to_omit
  @@skipped_branches + @@deleted_branches + ['master']
end

.delete(branch) ⇒ Object



16
17
18
19
20
21
# File 'lib/git_left/branches.rb', line 16

def self.delete(branch)
  @@deleted_branches ||= []
  @@deleted_branches << branch.name

  branch.delete
end

.deleted_branchesObject



7
8
9
# File 'lib/git_left/branches.rb', line 7

def self.deleted_branches
  @@deleted_branches || []
end

.random_branchObject



27
28
29
# File 'lib/git_left/branches.rb', line 27

def self.random_branch
  branches.sample
end

.skip(branch) ⇒ Object



11
12
13
14
# File 'lib/git_left/branches.rb', line 11

def self.skip(branch)
  @@skipped_branches ||= []
  @@skipped_branches << branch.name
end

.skipped_branchesObject



3
4
5
# File 'lib/git_left/branches.rb', line 3

def self.skipped_branches
  @@skipped_branches || []
end