Cache project branches and tags into variables

This commit is contained in:
Dmitriy Zaporozhets 2015-03-21 13:44:11 -07:00
parent 6cf189f0a9
commit 2c796a1785
2 changed files with 17 additions and 0 deletions

View file

@ -15,6 +15,7 @@ v 7.10.0 (unreleased)
- Improve error message when save profile has error.
- Passing the name of pushed ref to CI service (requires GitLab CI 7.9+)
- Add location field to user profile
- Improve GitLab performance when working with git repositories
v 7.9.0 (unreleased)
- Add HipChat integration documentation (Stan Hu)

View file

@ -62,24 +62,28 @@ class Repository
def add_branch(branch_name, ref)
cache.expire(:branch_names)
@branches = nil
gitlab_shell.add_branch(path_with_namespace, branch_name, ref)
end
def add_tag(tag_name, ref, message = nil)
cache.expire(:tag_names)
@tags = nil
gitlab_shell.add_tag(path_with_namespace, tag_name, ref, message)
end
def rm_branch(branch_name)
cache.expire(:branch_names)
@branches = nil
gitlab_shell.rm_branch(path_with_namespace, branch_name)
end
def rm_tag(tag_name)
cache.expire(:tag_names)
@tags = nil
gitlab_shell.rm_tag(path_with_namespace, tag_name)
end
@ -368,6 +372,18 @@ class Repository
end
end
def branches
@branches ||= raw_repository.branches
end
def tags
@tags ||= raw_repository.tags
end
def root_ref
@root_ref ||= raw_repository.root_ref
end
private
def cache