Optimize branch lookups and force a repository reload for Repository#find_branch
If `git gc` runs and `Repository` has an instance to `Rugged::Repository`, a bug in libgit2 may cause the instance to return a stale value or a missing branch. This change not only optimizes the branch lookup so we don't have to iterate through every branch, but it also works around the `git gc` issue by forcing a repository reload every time `Repository#find_branch` is called. See: https://github.com/libgit2/libgit2/issues/1534 Closes #15392, #21470
Showing
... | @@ -53,7 +53,7 @@ gem 'browser', '~> 2.2' | ... | @@ -53,7 +53,7 @@ gem 'browser', '~> 2.2' |
# Extracting information from a git repository | # Extracting information from a git repository | ||
# Provide access to Gitlab::Git library | # Provide access to Gitlab::Git library | ||
gem 'gitlab_git', '~> 10.4.7' | gem 'gitlab_git', '~> 10.5' | ||
# LDAP Auth | # LDAP Auth | ||
# GitLab fork with several improvements to original library. For full list of changes | # GitLab fork with several improvements to original library. For full list of changes | ||
... | ... |
Please register or sign in to comment