• Yorick Peterse's avatar
    Cache various Repository Git operations · 9a99d8e4
    Yorick Peterse authored
    This caches the output of the following methods:
    
    * Repository#empty?
    * Repository#has_visible_content?
    * Repository#root_ref
    
    The cache for Repository#has_visible_content? is flushed whenever a
    commit is pushed to a new branch or an existing branch is removed.
    The cache for Repository#root_ref is only flushed whenever a user
    changes the default branch of a project. The cache for Repository#empty?
    is never explicitly flushed as there's no need for it.
    9a99d8e4
project.rb 26.3 KB