Git 1.9 Release Notes
raw.github.com
raw.github.com
[1]: https://felipec.wordpress.com/2012/11/13/git-remote-hg-bzr-2...
https://code.facebook.com/posts/218678814984400/scaling-merc...
In particular, how old was the version of git they were testing with? Were they using SSDs?
Git's memory-intensive handling of large files with most operations continues to make it difficult to use as a versioned, incremental backup tool. Although I know that backup is not Git's originally intended purpose, it is otherwise a very good solution. Moreover, companies with large repositories run up against these limitations as well (see Facebook's move from git to mercurial). Does anyone know whether any improvements in these areas are slated for git 2.0 or being considered for a later point release?
They could even draw on the increasingly-great bup tool (https://github.com/bup/bup) that uses the git pack-file format with a rolling checksum algorithm to do fast deduplication within files.
also I distinctly remember that the linux kernel, rewinds history every so often(but maybe my memory is just playing tricks on me).
git is not a backup tool, i always scold people for checking large binary files into their text file revision systems.
take a look at ori[2] for git like backup solution. git annex is also an interesting solution[3]. although he says specifically to not confuse it for a dropbox clone.
now to get back to your first point. as we established facebooks speedup happens because of difference in dealing with shallow cloned repositories. it seems to me like git is making improvements in that regard see the following:
> * Fetching from a shallowly-cloned repository used to be forbidden, primarily because the codepaths involved were not carefully vetted and we did not bother supporting such usage. This release attempts to allow object transfer out of a shallowly-cloned repository in a more controlled way (i.e. the receiver become a shallow repository with a truncated history).
[1] https://bitbucket.org/facebook/remotefilelog
[2] http://ori.scs.stanford.edu/
[3] http://git-annex.branchable.com/
EDIT: bup looks nice though, thanks for the info
I'll have to check out ori as well.
"bibisect stands for "binary bisect" and is intended to help LibreOffice QA dealing with regressions. Regressions are a most annoying artifact that unfortunately comes with software development and QA. However, regressions are a misfeature we want to deal with quick and early as they might get harder and harder to triage and fix as time passes.
Because the way git stores its stuff, one bibisect can contain several complete Linux 64-bit office installs in a very much compressed size.
And one does not need to install them in parallel as one can switch through all of them with a quick "git checkout source-hash-XXXXXX" -- one switch costs <1 second)."
it's not a repo anyone will ever work with. some build bot builds it, and noone else ever commits things back. you just download the tar'd repo, and never ever commit anything or push back. it's also clearly seperated from any code repositories they have.
but maybe i misunderstood something so feel free to correct me.
http://thread.gmane.org/gmane.comp.version-control.git/24120...
# git --version
git version 1.9.0 brew install https://raw.github.com/asaph/homebrew/2897329686d905fc357c5e2e87597c8f6a8e9cd1/Library/Formula/git.rb
But they want to wait a few days to ensure there’re no bugs found [1] before adding it to the main repo. root@ronin:~# apt-show-versions -a git
git:amd64 1:1.9.0~rc3-1 install ok installed
git:amd64 1:1.9.0~rc3-1 unstable ftp.us.debian.org
git:amd64 1:2.0~next.20140207-1 experimental ftp.us.debian.org
git:amd64/unstable 1:1.9.0~rc3-1 uptodateMight want to try this instead: https://github.com/git/git/blob/master/Documentation/RelNote...
http://kaivong.com/my_cloud/Git-v1.9.0-Release-Notes.html
Feel free to mirror or tell me of a nicer version!