add journaling to speed up changes to the git-annex branch
git is slow when the index file is large and has to be rewritten each time a file is changed. To speed this up, added a journal where changes are recorded before being fed into the index file and committed to the git-annex branch. The entire journal can be fed into git with just 2 commands, and only one write of the index file.
This commit is contained in:
parent
23e765b67c
commit
5f494154a3
7 changed files with 132 additions and 40 deletions
|
@ -21,9 +21,13 @@ deleting or changing the file contents.
|
|||
|
||||
This branch is managed by git-annex, with the contents listed below.
|
||||
|
||||
Note that git-annex assumes only it will modify this branch. If you go in
|
||||
and make changes directly, it will probably revert your changes in its next
|
||||
commit to the branch.
|
||||
The file `.git/index.git-annex` is a separate git index file it uses
|
||||
to accumlate changes for the branch. Also, `.git/annex/journal/` is used
|
||||
to record changes before they are added to git.
|
||||
|
||||
Note that for speed reasons, git-annex assumes only it will modify this
|
||||
branch. If you go in and make changes directly, it will probably revert
|
||||
your changes in its next commit to the branch.
|
||||
|
||||
The best way to make changes to the git-annex branch is instead
|
||||
to create a branch of it, with a name like "my/git-annex", and then
|
||||
|
|
|
@ -29,11 +29,6 @@ This upgrade is easier than the previous upgrades. You don't need to
|
|||
upgrade every repository at once; it's sufficient to upgrade each
|
||||
repository only when you next use it.
|
||||
|
||||
This upgrade can be sped up by, before you start, making
|
||||
.git/index.git-annex into a symlink to a file on a ramdisk.
|
||||
For example: `ln -s /run/shm/index.git-annex.$(git config annex.uuid) .git/index.git-annex`
|
||||
but, if you do that, be sure to remove the symlink after the upgrade!
|
||||
|
||||
After the upgrade is complete, commit the changes it staged.
|
||||
|
||||
git commit -m "upgrade v2 to v3"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue