Wie verwende ich git lfs zusammen mit gitblit?
gibblit habe ich ja hier schonmal begeistert gelobt. Alles was ich hier schreibe, gilt aber vermutlich auch genauso für andere git-Server.
So geht’s los:
brew install git-lfs
git clone ...
git lfs install
git lfs track "*.pdf"
git add .gitattributes
git add TestRechnung.pdf
git commit -m "add a Rechnung"
git push
- Danach sieht man das File mit git – so wie jedes andere.
git clone
holt die PDFs schon direkt vom LFS:$ git clone http://server/r/test.git
Cloning into ‚test’…
remote: Counting objects: 17, done
remote: Finding sources: 100% (17/17)
remote: Getting sizes: 100% (10/10)
remote: Compressing objects: 100% (37/37)
remote: Total 17 (delta 2), reused 14 (delta 2)
Unpacking objects: 100% (17/17), done.
Checking connectivity… done.
Downloading TestRechnung.pdf (2.18 MB)
$ -
In gitblit kann man sich das PDF unter „raw“ leider mit der aktuellen gitblit-Version 1.7.1 NICHT Browser anschauen. Das ist aber schon im master behoben (webclient does not support LFS), wird also wohl in der 1.7.2 funktionieren.
- Mit einer ssh-Repo-URL hat es bei mir nicht geklappt (kann aber an mir gelegen haben).
- belegter Plattenplatz: Das Repo ist zwar klein, weil es die PDFs nicht mehr enthält. Trotzdem liegt jedes LFS-File (PDF in meinem Fall) noch 2x lokal: Einmal im Verzeichnisbaum und einmal unter
.git/lfs/objects
. Ob man das vermeiden kann?