versioning large binary files with jgit, egit and gerrit

13

Upload: msohn

Post on 12-Feb-2017

1.138 views

Category:

Software


3 download

TRANSCRIPT

Page 1: Versioning large binary files with JGit, EGit and Gerrit
Page 2: Versioning large binary files with JGit, EGit and Gerrit

Page 3: Versioning large binary files with JGit, EGit and Gerrit

.gitattributesslides.pdfX.java

.git-- objects -- sha1

-- lfs -- objects -- sha256

git server

lfs server

git

git-lfs

Page 4: Versioning large binary files with JGit, EGit and Gerrit

.gitattributesslides.pdfX.java

.git-- config objects -- sha1

-- lfs -- objects -- sha256

which files to be handled by LFS ?

lfs clean filter intercepts add

lfs smudge filter intercepts checkout

pre-push hook sends LFS objects to LFS server

Page 5: Versioning large binary files with JGit, EGit and Gerrit

.gitattributesslides.pdfX.java

.git-- objects -- sha1

-- lfs -- objects -- sha256

store meta data in objectsstore big file in lfs objects

lfs clean filter

Page 6: Versioning large binary files with JGit, EGit and Gerrit

.gitattributesslides.pdfX.java

.git-- objects -- sha1

-- lfs -- objects -- sha256

git server

lfs server

pre-push hook

push

Page 7: Versioning large binary files with JGit, EGit and Gerrit

.gitattributesslides.pdfX.java

.git-- objects -- sha1

-- lfs -- objects -- sha256

git server

lfs serverfetch all meta-data

checkoutdownloadslazily

lfs smudge filter

Page 8: Versioning large binary files with JGit, EGit and Gerrit

EGit Gerrit.gitattributesslides.pdfX.java

.git-- objects -- sha1

JGit

git-lfs

JGit

LFSprotocol

Gerrit pluginlfs-storage-fs

JGit FS storage

.git-- objects -- sha1

-- lfs -- objects -- sha256

Page 9: Versioning large binary files with JGit, EGit and Gerrit
Page 10: Versioning large binary files with JGit, EGit and Gerrit

Page 11: Versioning large binary files with JGit, EGit and Gerrit

Page 12: Versioning large binary files with JGit, EGit and Gerrit

EGit Gerrit.gitattributesslides.pdfX.java

.git-- objects -- sha1

-- lfs -- objects -- sha256

JGit

jgit-lfs

JGit

LFS protocol

Gerrit pluginlfs-storage-swift

OpenStackSwift

storage

.git-- objects -- sha1

Page 13: Versioning large binary files with JGit, EGit and Gerrit