LFS files not being downloaded with Tower and GitLab Enterprise
I believe that Tower is a supported way to access GitLab and that both Tower and GitLab support Git LFS (Large File Support). However when I try to clone a GitLab Enterprise repository using the latest version of Tower, I get pointer files, not the actual LFS tracked files.
What am I doing wrong?
- I am cloning a repository hosted on an instance of GitLab Enterprise Edition 10.5.6-ee gitlab-ce@9a19fbe1435f7b51b317cd821c2c3effc9857d2c (source.unity3d.com). Using a browser I that certain files in the repository and branch I want on source.unity3d.com are marked ‘LFS’.
- On my Windows 10 workstation I have a fresh install of Tower 2.0.1 (Build 278).
- I added a GitLab community / Enterprise Service Account in Tower using my source.unity3d.com credentials which has an SSH key associated.
- In the view for this Service Account I see a list of Repositories and a Clone button for each.
- I use this to clone locally, having checked Use LFS Clone.
- I then open the cloned repository from Repositories.
- I visit Settings, select the Git LFS tab and see that Git LFS appears to be enabled (a list of tracking patterns are visible).
- I right click on Working Copy and select Rebase, chose the remote branch I want and press Rebase. I wait for the Rebase operation to complete.
- I then load the new copy of one of the files that was shown with the LFS marker on source.unity3d.com into a text editor.
- I see an LFS “pointer file”, NOT the actual file. It looks like
version https://git-lfs.github.com/spec/v1 oid sha256:180588460c4fe5309cabdb0c8ef426316d95c46bb3ffdc3f8c57995a05b5979d size 1130
I note a user comment on https://docs.gitlab.com/ee/workflow/lfs/manage_large_binaries_with_git_lfs.html
“If the remote repository is using lfs, but your local git client does not have lfs installed, you will get lfs pointer files instead of the real file. See https://github.com/git-lfs/…”
However I also note that https://about.gitlab.com/2017/01/30/getting-started-with-git-lfs-tutorial/ says
“Your local Git installation also needs to support LFS. If you're using Tower, a Git desktop client, you don't have to install anything: Tower supports the Git Large File System out of the box.” https://www.git-tower.com/help/win/integration/git-lfs also says “Tower comes with built-in support for Git LFS. You don't have to install the extension manually on your local computer.”