Conversation RepositoryService::GetArchive
**Known Client Routes**:
- https://gitlab.com/gitlab-org/gitaly/repository/master/archive.zip
**Stages**:
- [x] ~"RPC Design": https://gitlab.com/gitlab-org/gitaly/issues/604 https://gitlab.com/gitlab-org/gitaly-proto/merge_requests/83
- [x] ~"Client Preparation": https://gitlab.com/gitlab-org/gitlab-workhorse/merge_requests/190
- [x] ~"Server Implementation": https://gitlab.com/gitlab-org/gitaly/issues/607 https://gitlab.com/gitlab-org/gitaly/merge_requests/370
- [x] ~"Client Implementation": https://gitlab.com/gitlab-org/gitaly/issues/623 https://gitlab.com/gitlab-org/gitlab-workhorse/merge_requests/199 https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/14605
- [x] ~"Acceptance Testing": https://gitlab.com/gitlab-org/gitaly/issues/648
**RPC Endpoints**:
- `RepositoryService::GetArchive`
------------------------------------------------------------
This is a gitlab-workhorse feature. https://gitlab.com/gitlab-org/gitlab-workhorse/blob/master/internal/git/archive.go
The Workhorse implementation is slightly complicated because it uses a disk cache. In the interest of cutting corners, the first iteration of the Gitaly implementation should not have a disk cache.
Edited by Alejandro Rodríguez