Commit graph

288 commits

Author SHA1 Message Date
Joey Hess
3953f7ab81 idea 2011-12-01 17:40:26 -04:00
Joey Hess
e83b966eb5 cleanup 2011-11-15 23:51:24 -04:00
Joey Hess
04edae6791 Optimised union merging; now only runs git cat-file once. 2011-11-12 17:45:12 -04:00
Joey Hess
e9bfa8eaed avoid unnecessary auto-merge when only changing a file in the branch.
Avoids doing auto-merging in commands that don't need fully current
information from the git-annex branch. In particular, git annex add no
longer needs to auto-merge. Affected commands: Anything that doesn't
look up data from the branch, but does write a change to it.

It might seem counterintuitive that we can change a value without first
making sure we have the current value. This optimisation works because
these two sequences are equivilant:

1. pull from remote
2. union merge
3. read file from branch
4. modify file and write to branch

vs.

1. read file from branch
2. modify file and write to branch
3. pull from remote
4. union merge

After either sequence, the git-annex branch contains the same logical content
for the modified file. (Possibly with lines in a different order or
additional old lines of course).
2011-11-12 15:15:57 -04:00
Joey Hess
fe4ad93e4a add 2011-11-12 14:46:32 -04:00
Joey Hess
6e946b9a39 add 2011-11-12 14:24:14 -04:00
Joey Hess
05b7608113 update 2011-11-08 01:27:06 -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
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
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
Joey Hess
2eefc58070 status too 2011-10-27 14:55:06 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
12a0a45fb1 2011-10-25 21:40:30 +00:00
Joey Hess
e2853b3fec update 2011-10-25 11:39:15 -07:00
Joey Hess
81fe6f775c close 2011-10-17 14:17:18 -04:00
Joey Hess
279150ccd5 update 2011-10-15 13:30:04 -04:00
Joey Hess
bae3008d17 add a copy of my mailing list post 2011-10-15 13:17:00 -04:00
Joey Hess
c867ae842a add 2011-10-15 13:13:57 -04:00
Joey Hess
8ea48c3e39 update docs 2011-09-18 20:56:37 -04:00
Joey Hess
756338fb2e idea 2011-09-17 18:37:38 -04:00
Joey Hess
f600444ab6 unused --remote: Reduced memory use to 1/4th what was used before.
Using a single strictness annotation, in just the right place.
Tried several others, none of which helped and some of which potentially
hurt. This is only the second time I've really had to deal with this in
a year of using haskell, which is, I suppose not that bad.
2011-08-31 19:13:02 -04:00
Joey Hess
b96443364e smudge update: Not practical. 2011-08-30 13:29:07 -04:00
Joey Hess
5ef11350aa link to patch 2011-08-29 16:41:47 -04:00
Joey Hess
cd199e442f update; showstopper issue with current git
developed a patch for git, we'll see if they like it..
2011-08-29 16:31:47 -04:00
Joey Hess
b2c5639dcc update 2011-08-29 13:29:39 -04:00
Joey Hess
676c467801 close 2011-08-29 12:49:38 -04:00
Joey Hess
ace9de37e8 download urls via tmp file, and support resuming 2011-07-01 18:59:40 -04:00
Joey Hess
e1c18ddec4 Sped back up fsck, copy --from etc
All commands that often have to read a lot of information from
the git-annex branch should now be nearly as fast as before
the branch was introduced.

Before fsck was taking approximatly 3 hours, now it's running in 8 minutes.

The code is very nasty. It should be rewritten to read the header line
from git cat-file, and then read the specified number of bytes of content.
2011-06-29 21:47:31 -04:00
Joey Hess
8725fde5c6 new plan 2011-06-29 20:22:19 -04:00
Joey Hess
5034d8c298 Modify location log parser to allow future expansion.
Since the logs have just been moved into the git-annex branch, don't need
to worry about backwards compatability with old versions of git-annex that
would fail to parse location logs with extra fields tacked on.
2011-06-28 16:15:50 -04:00
Joey Hess
a61154baf5 add 2011-06-23 20:52:56 -04:00
Joey Hess
c7a1690f02 update 2011-06-22 17:56:07 -04:00
Joey Hess
c835166a7c add git-union-merge
This is a new git subcommand, that does a generic union merge operation
between two refs, storing the result in a branch. It operates efficiently
without touching the working tree. It does need to write out a temporary
index file, and may need to write out some other temp files as well.

This could be useful for anything that stores data in a branch,
and needs to merge changes into that branch without actually checking the
branch out. Since conflict handling can't be done without a working copy,
the merge type is always a union merge, which is fine for data stored in
log format (as git-annex does), or in non-conflicting files
(as pristine-tar does).

This probably belongs in git proper, but it will live in git-annex for now.

---

Plan is to move .git-annex/ to a git-annex branch, and use git-union-merge
to handle merging changes when pulling from remotes.

Some preliminary benchmarking using real .git-annex/ data indicates
that it's quite fast, except for the "git add" call, which is as slow
as "git add" tends to be with a big index.
2011-06-20 21:37:18 -04:00
Joey Hess
91e50782ce thought 2011-06-20 21:37:18 -04:00
Joey Hess
2fcb8e3b11 update 2011-06-20 21:37:18 -04:00
Joey Hess
e593a81041 update 2011-06-20 21:37:18 -04:00
Joey Hess
30d7cce7ec rsync is now used when copying files from repos on other filesystems
cp is still used when copying file from repos on the same filesystem, since
--reflink=auto can make it significantly faster on filesystems such as
btrfs.

Directory special remotes still use cp, not rsync. It's not clear what
tmp file should be used when rsyncing to such a remote.
2011-06-13 20:33:52 -04:00
http://ertai.myopenid.com/
c7b7595f50 Added a comment 2011-05-20 20:17:15 +00:00
http://joey.kitenet.net/
93b0f21c95 Added a comment 2011-05-17 19:57:33 +00:00
zooko
44499bbdf8 Added a comment: performance 2011-05-17 19:20:39 +00:00
Joey Hess
f63412a42c close 2011-05-17 12:19:52 -04:00
Joey Hess
f664a2538a fix 2011-05-17 12:18:50 -04:00
Joey Hess
ebfa50b729 add 2011-05-17 12:14:46 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
3154dc036a Added a comment 2011-05-17 07:27:03 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
e6c95a6a5e 2011-05-17 07:25:33 +00:00
Joey Hess
51cc71fac1 longterm todo item 2011-05-16 22:37:31 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
8c152836ab Added a comment 2011-05-14 15:00:51 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus
12ecf6c0c6 Added a comment 2011-05-14 10:04:37 +00:00
Joey Hess
e72c1c33ae would be nice.. 2011-05-13 23:05:14 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
59e960a51c 2011-05-09 12:24:28 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
50fecbcb41 2011-05-09 12:23:50 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
7020d5bc5b 2011-05-06 22:35:28 +00:00
Joey Hess
f1fbe33cfe response 2011-05-06 14:43:40 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
33041e4afb Added a comment 2011-05-06 18:30:03 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
489156f255 removed 2011-05-06 18:29:23 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
d59666aed6 Added a comment 2011-05-06 18:28:43 +00:00
https://me.yahoo.com/a/wpdhh7Et0MiET3shW4BlKe60GFs_mXI-#16fd9
405745acdd 2011-05-05 22:35:44 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkjvjLHW9Omza7x1VEzIFQ8Z5honhRB90I
9b133a8122 Added a comment: Duplication of the filenames is what I am concerned about 2011-04-29 11:48:23 +00:00
Joey Hess
ad7f87880e move wishlists to todo 2011-04-09 16:12:32 -04:00
http://joey.kitenet.net/
cdea1a6b3a Comment moderation 2011-04-09 17:15:01 +00:00
Joey Hess
fdf1c64812 notes 2011-04-09 11:13:01 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
939c88787a 2011-04-08 22:05:26 +00:00
Joey Hess
1861a065b2 close 2011-04-08 16:59:13 -04:00
Joey Hess
4ea0b7c288 add 2011-04-07 14:45:10 -04:00
Joey Hess
079e57adf7 current thoughts 2011-04-07 12:33:48 -04:00
http://dieter-be.myopenid.com/
b73accb483 Added a comment: symlinks 2011-04-03 20:30:22 +00:00
Joey Hess
e7c1332fa2 updat 2011-03-29 18:30:41 -04:00
Joey Hess
1878745a46 more s3 docs 2011-03-28 02:13:26 -04:00
Joey Hess
fb47e88404 revamp s3 design
looking very doable now
2011-03-27 17:45:11 -04:00
Joey Hess
433c1780cf more thoughts 2011-03-26 18:26:36 -04:00
Joey Hess
d6e1d06804 alt approach 2011-03-19 12:49:37 -04:00
Joey Hess
70a8a3ab71 update 2011-03-18 09:47:12 -04:00
Joey Hess
028eb96f40 design 2011-03-18 09:39:27 -04:00
Joey Hess
3a020e599e Merge branch 'master' into reorg
Conflicts:
	debian/changelog
2011-03-16 18:47:04 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
a5b48c7b66 Added a comment 2011-03-16 21:05:39 +00:00
Joey Hess
6255865c6c update 2011-03-16 16:14:50 -04:00
http://joey.kitenet.net/
ba584005b0 Added a comment 2011-03-16 16:32:52 +00:00
http://joey.kitenet.net/
e044d40cbd Comment moderation 2011-03-16 16:29:33 +00:00
Joey Hess
955bda7803 update 2011-03-15 23:25:12 -04:00
http://joey.kitenet.net/
0ead8b59c2 Added a comment 2011-03-16 03:22:46 +00:00
http://joey.kitenet.net/
fe4e482a96 Comment moderation 2011-03-16 02:58:44 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
7d316d0f0d Added a comment 2011-03-16 01:19:26 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
2d5339d7cb Added a comment 2011-03-16 01:16:48 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
96e074bb03 2011-03-14 17:07:31 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
a4993f9321 2011-03-14 17:06:30 +00:00
Joey Hess
a021ae9291 design 2011-03-14 12:33:15 -04:00
Joey Hess
16845a1f66 response 2011-03-14 12:21:58 -04:00
Joey Hess
5ea4f0c0f3 response 2011-03-14 12:18:23 -04:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
d7ea568f50 2011-03-14 14:02:47 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
9b353aa60e 2011-03-14 13:54:07 +00:00
https://www.google.com/accounts/o8/id?id=AItOawl9sYlePmv1xK-VvjBdN-5doOa_Xw-jH4U
d86357a416 2011-03-14 13:52:07 +00:00
Joey Hess
72d2684016 Rethink filename encoding handling for display. Since filename encoding may or may not match locale settings, any attempt to decode filenames will fail for some files. So instead, do all output in binary mode. 2011-03-12 15:30:17 -04:00
Joey Hess
d7b4c8372b update 2011-03-08 18:23:13 -04:00
Joey Hess
876f0c6fbc add new todo item 2011-03-08 18:19:52 -04:00
http://christian.amsuess.com/chrysn
9e74d3bfc3 Added a comment: git-add instead of git-annex-add 2011-02-26 21:43:22 +00:00
Joey Hess
8aebf9a337 update 2011-02-25 15:54:29 -04:00
Joey Hess
3f7c0b6970 further investigation 2011-02-25 15:50:17 -04:00
Joey Hess
1f44ccb702 add 2011-02-22 14:44:17 -04:00
Joey Hess
07769fc949 more 2011-01-26 13:40:11 -04:00
Joey Hess
758019cc18 update 2011-01-26 13:34:39 -04:00
Joey Hess
06ca13b103 add 2011-01-26 13:21:51 -04:00
Joey Hess
ff11803c89 add 2011-01-26 12:34:15 -04:00
Joey Hess
700aed13cf git-annex-shell now exclusively used for all remote access 2010-12-31 19:09:17 -04:00
Joey Hess
a91e31cef3 response 2010-12-29 20:33:55 -04:00
Joey Hess
03e579060b already exists 2010-12-29 20:30:03 -04:00
Joey Hess
829c8b7660 clarify 2010-12-29 20:28:34 -04:00
praet
f6db527af8 2010-12-30 00:12:44 +00:00
praet
80bad5c435 2010-12-30 00:01:02 +00:00
praet
88edf83b5c 2010-12-29 23:47:46 +00:00
Joey Hess
39d0bcb793 things to do still 2010-12-28 17:46:38 -04:00
Joey Hess
3714364905 design for a git-annex-shell 2010-12-28 17:44:36 -04:00
Joey Hess
37941184f9 Rsync will now be used to resume interrupted/failed partial file transfers from a remote. 2010-12-02 16:55:21 -04:00
Joey Hess
161823d6ea Only use cp -a if it is supported, falling back to cp -p or plain cp.
* cp --reflink=auto is used if supported, and will make git annex unlock
  much faster on filesystems like btrfs that support copy of write.
2010-11-18 13:49:01 -04:00
Joey Hess
38a75aa26f close 2010-11-15 18:42:32 -04:00
Joey Hess
c305fb2bf3 thought 2010-11-15 15:21:11 -04:00
Joey Hess
40ae21c895 this is looking more and more problimatic 2010-11-15 14:00:28 -04:00
Joey Hess
0e1e32cb6b problem 2010-11-15 13:13:01 -04:00
Joey Hess
14d897a338 close 2010-11-13 15:43:08 -04:00
Joey Hess
d4d65a3c92 new fsck items 2010-11-13 13:11:41 -04:00
Joey Hess
3a5efc54d0 fullfledged design for moving location tracking info into branches 2010-11-12 11:00:20 -04:00
Joey Hess
09da0da02f add 2010-11-12 00:56:08 -04:00
Joey Hess
d56feda25d maybe call it unlock and not checkout
It'd be confusing to have a git-annex subcommand with the same name as a
git subcommand.
2010-11-09 15:11:45 -04:00
Joey Hess
75d2925082 Merge branch 'master' into checkout
Conflicts:
	debian/changelog
	doc/backends.mdwn
2010-11-09 15:05:08 -04:00
Joey Hess
1d32d902c9 Annexed file contents are now made unwritable and put in unwriteable directories, to avoid them accidentially being removed or modified. (Thanks Josh Triplett for the idea.) 2010-11-08 19:26:37 -04:00
Joey Hess
377bf24d9a documentation for checkout 2010-11-07 21:02:25 -04:00
Joey Hess
05d321ace6 done 2010-11-07 18:24:44 -04:00
Joey Hess
8156af90ed update 2010-11-07 00:28:17 +00:00
Joey Hess
b1e26b19c6 idea 2010-11-07 00:26:44 +00:00
Joey Hess
b220e117f2 idea 2010-10-31 17:20:05 -04:00
Joey Hess
763882925d idea2 2010-10-31 17:04:28 -04:00
Joey Hess
9429cdb9da idea 2010-10-31 17:02:49 -04:00
Joey Hess
1118b4a646 idea 2010-10-27 19:27:01 -04:00
Joey Hess
7bd7cca399 some work on the sha1 backend; still incomplete 2010-10-27 15:00:41 -04:00
Joey Hess
563484e135 pre-commit hook 2010-10-27 14:33:44 -04:00
Joey Hess
4a69cb8ade done 2010-10-25 20:20:17 -04:00
Joey Hess
7fe4bfa20f split commands into 3 phases
I feel like I just leveled up in Haskell.
2010-10-25 15:44:27 -04:00
Joey Hess
81f71e57b9 reorg 2010-10-25 11:47:45 -04:00