git LFS mit gitblit

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?

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.