Commit graph

1446 commits

Author SHA1 Message Date
Joey Hess
b7cd088433 add 2011-11-07 13:08:47 -04:00
Joey Hess
80787703c3 add news item for git-annex 3.20111107 2011-11-07 13:07:43 -04:00
Joey Hess
c99fb58909 merge: Use fast-forward merges when possible.
Thanks Valentin Haenel for a test case showing how non-fast-forward merges
could result in an ongoing pull/merge/push cycle.

While the git-annex branch is fast-forwarded, git-annex's index file is still
updated using the union merge strategy as before. There's no other way to
update the index that would be any faster.

It is possible that a union merge and a fast-forward result in different file
contents: Files should have the same lines, but a union merge may change
their order. If this happens, the next commit made to the git-annex branch
will have some unnecessary changes to line orders, but the consistency
of data should be preserved.

Note that when the journal contains changes, a fast-forward is never attempted,
which is fine, because committing those changes would be vanishingly unlikely
to leave the git-annex branch at a commit that already exists in one of
the remotes.

The real difficulty is handling the case where multiple remotes have all
changed. git-annex does find the best (ie, newest) one and fast forwards
to it. If the remotes are diverged, no fast-forward is done at all. It would
be possible to pick one, fast forward to it, and make a merge commit to
the rest, I see no benefit to adding that complexity.

Determining the best of N changed remotes requires N*2+1 calls to git-log, but
these are fast git-log calls, and N is typically small. Also, typically
some or all of the remote refs will be the same, and git-log is not called to
compare those. In the real world I expect this will almost always add only
1 git-log call to the merge process. (Which already makes N anyway.)
2011-11-06 15:22:40 -04:00
Joey Hess
bf07e2c921 typo 2011-11-06 13:53:11 -04:00
Joey Hess
cd267dea15 add news item for git-annex 3.20111105 2011-11-05 15:55:30 -04:00
Valentin_Haenel
526c20d068 add bug report 2011-11-05 16:31:18 +00:00
Valentin_Haenel
502f86604f a recipe for setting up a bare remote 2011-11-04 23:19:13 +00:00
http://joey.kitenet.net/
dabb6a9f26 Added a comment: depends ... 2011-11-04 19:59:24 +00:00
Joey Hess
ef3457196a use SHA256 by default
To get old behavior, add a .gitattributes containing: * annex.backend=WORM

I feel that SHA256 is a better default for most people, as long as their
systems are fast enough that checksumming their files isn't a problem.
git-annex should default to preserving the integrity of data as well as git
does. Checksum backends also work better with editing files via
unlock/lock.

I considered just using SHA1, but since that hash is believed to be somewhat
near to being broken, and git-annex deals with large files which would be a
perfect exploit medium, I decided to go to a SHA-2 hash.

SHA512 is annoyingly long when displayed, and git-annex displays it in a
few places (and notably it is shown in ls -l), so I picked the shorter
hash. Considered SHA224 as it's even shorter, but feel it's a bit weird.

I expect git-annex will use SHA-3 at some point in the future, but
probably not soon!

Note that systems without a sha256sum (or sha256) program will fall back to
defaulting to SHA1.
2011-11-04 15:51:01 -04:00
Joey Hess
532ff19aa5 fix link 2011-11-04 15:51:01 -04:00
https://www.google.com/accounts/o8/id?id=AItOawmBUR4O9mofxVbpb8JV9mEbVfIYv670uJo
7df8052a4b 2011-11-03 23:53:51 +00:00
Joey Hess
8e249ea0bd add tip for mode of operation somewhat like mercurial bigfiles extension 2011-11-02 13:32:19 -04:00
Joey Hess
e9286e7be7 point to new extension now in mercurial 2011-11-02 12:02:04 -04:00
Joey Hess
3d3e1c4c25 better command name 2011-10-31 15:18:41 -04:00
Joey Hess
380839299e The fromkey command now takes the key as its first parameter. The --key option is no longer used. 2011-10-31 12:56:07 -04:00
Joey Hess
cc1ea8f844 Removed the setkey command, and added a setcontent command with a more useful interface. 2011-10-31 12:33:41 -04:00
Joey Hess
1530eac312 closures 2011-10-30 16:57:20 -04:00
Joey Hess
3cf811ead0 update; status is no longer slow 2011-10-30 16:49:49 -04:00
Joey Hess
56080a0feb closures 2011-10-30 16:44:09 -04:00
Joey Hess
ee71564754 add command name to some output 2011-10-30 16:38:48 -04:00
Joey Hess
ef5330120c bare cleanup 2011-10-29 19:30:48 -04:00
Joey Hess
22e9f445ab unused, dropunused: Now work in bare repositories.
Turned out I had already done all the work needed to support this when
unused started checking all branches.
2011-10-29 19:16:45 -04:00
Joey Hess
c102e63595 status: clean up for bare repositories
The backend usage graph shows present keys as well as keys found in the
repository tree, so it will also be populated for bare repositories.

Changed wording to "visible annex keys", which explains why it's 0 in
a bare repository (no keys visible as no tree), and also why it varies
depending on which branch is checked out. This seemed better than doing
something expensive to look up keys from the git-annex branch.
2011-10-29 19:06:49 -04:00
Joey Hess
506282399c Merge branch 'master' of ssh://git-annex.branchable.com 2011-10-29 18:11:25 -04:00
Joey Hess
2566eb85fe fsck: Now works in bare repositories.
Checks location log information, and file contents.

Does not check that numcopies is satisfied, as .gitattributes information
about numcopies is not available in a bare repository. In practice, that
should not be a problem, since fsck is also run in a checkout and will
check numcopies there.
2011-10-29 18:03:28 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
a183487cd5 2011-10-29 21:36:06 +00:00
Joey Hess
36f63ab19e getting tired of repeating myself 2011-10-29 16:21:34 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
3f32216178 2011-10-29 20:02:21 +00:00
Joey Hess
a93aa2e51e responsen 2011-10-29 15:46:16 -04:00
Joey Hess
05d9d7a030 Merge branch 'master' of ssh://git-annex.branchable.com 2011-10-29 15:41:51 -04:00
Joey Hess
6c3b87f0de add a tip 2011-10-29 15:40:32 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
b7d2fd8186 2011-10-29 19:09:19 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
d46b8c053e Added a comment 2011-10-29 18:28:14 +00:00
Joey Hess
0d92aca1aa responsen 2011-10-29 14:17:02 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
75e99b16f9 2011-10-29 17:45:07 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
e9d142e9e8 2011-10-29 17:27:48 +00:00
Joey Hess
0dfe750c0b close 2011-10-29 13:21:28 -04:00
Joey Hess
ad3b462214 sheesh. seriously? 2011-10-29 13:17:37 -04:00
Joey Hess
158fd0d908 Merge branch 'master' of ssh://git-annex.branchable.com 2011-10-29 13:16:56 -04:00
Joey Hess
978ab987d5 pebak 2011-10-29 13:16:10 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
3868a65663 2011-10-29 17:07:44 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
36355e815e Added a comment 2011-10-29 17:03:27 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
39c304be43 2011-10-29 16:57:10 +00:00
Joey Hess
4d7802bff7 responsen 2011-10-29 12:45:47 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
0dcbe51ed2 2011-10-29 15:36:43 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
ce4029c973 Added a comment 2011-10-29 15:30:10 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
7588b042da 2011-10-29 15:27:06 +00:00
Joey Hess
f65100b408 Revert "as far as I know, --bwlimit does not accept unit, it always takes kilobytes"
This reverts commit aeb4e285eb.

bup's --bwlimit does take a unit, unlike rsync's.
2011-10-28 21:24:24 -04:00
http://nicolas-schodet.myopenid.com/
aeb4e285eb as far as I know, --bwlimit does not accept unit, it always takes kilobytes 2011-10-29 01:01:38 +00:00
Joey Hess
6c31e3a8c3 drop --from is now supported to remove file content from a remote. 2011-10-28 17:26:38 -04:00