You can protect a branch in GitLab , but not a complete repo: if the user can see the repo, he can clone it all.
The simplest solution would be to set up a separate repo only with the contents of this directory so that you can track and retrieve the patch whenever something changes in the folder:
git format-patch master --stdout > a_folder.patch
source share