Conversation RepositoryService::ApplyGitattributes
Feature Flag: gitaly_apply_gitattributes
Gitlab::Git::Repository#copy_gitattributes
Stages:
-
~"Client Implementation": #464 (closed) https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/13517 -
~"Acceptance Testing": #577 (closed)
RPC Endpoints:
Endpoint::Name
Known Client Routes:
- Known client endpoints
It's fairly straightforward what this does:
- look up the contents of
.gitattributes
at the given revision - write out the contents to
info/attributes
inside the bare repo
Proposed RPC is in the comments below.
We need to take special care to atomically update the info/attributes
file:
- write tempfile in the
info/
directory of the repo - close tempfile -> because of NFS open/close semantics
- rename tempfile to
attributes