Support setting default branch through the write-ahead log
Gitaly's TransactionManager
currently doesn't support setting the repository's default branch through the write-ahead log. We need to support this so the operation can be replicated properly to other nodes. The default branch of a repository is stored in HEAD
as symbolic reference. The reference pointed to is the default branch. Gitaly currently supports just setting the default branch, it doesn't support setting it conditionally depending on its old value. We should implement support for setting the default branch through the write-ahead log matching the old behavior for now.
We likely want to special case setting the default branch for now and not support symbolic references in general. Symbolic references require more logic to support all around when it comes to reference verification and so on. We don't support setting any symbolic references through Gitaly's API so investing in more general support may not be needed right now.