Commit graph

515 commits

Author SHA1 Message Date
Joey Hess
480495beb4 Prevent key names from containing newlines.
There are several places where it's assumed a key can be written on one
line. One is in the format of the .git/annex/unused files. The difficult
one is that filenames derived from keys are fed into git cat-file --batch,
which has a line based input. (And no -z option.)

So, for now it's best to block such keys being created.
2011-12-06 13:03:09 -04:00
http://joey.kitenet.net/
cf5353acb4 Added a comment 2011-12-06 16:49:32 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnXybLxkPMYpP3yw4b_I6IdC3cKTD-xEdU
01f7c74d1f 2011-12-06 13:05:11 +00:00
Joey Hess
7b08584c55 close 2011-12-02 16:59:09 -04:00
Joey Hess
6f29f9db72 rename 2011-12-02 16:15:18 -04:00
Joey Hess
f4bf444ae0 store content in hashDirLower directories in bare repositories
When storing content in bare repositories, use the hashDirLower
directories. Bare repositories can be on USB drives, which might
use the FAT filesystem, and fall afoul of recent bugs in linux's handling
of mixed case on FAT. Using hashDirLower avoids that.
2011-11-28 22:55:40 -04:00
Joey Hess
6869e6023e support .git/annex on a different disk than the rest of the repo
The only fully supported thing is to have the main repository on one disk,
and .git/annex on another. Only commands that move data in/out of the annex
will need to copy it across devices.

There is only partial support for putting arbitrary subdirectories of
.git/annex on different devices. For one thing, but this can require more
copies to be done. For example, when .git/annex/tmp is on one device, and
.git/annex/journal on another, every journal write involves a call to
mv(1). Also, there are a few places that make hard links between various
subdirectories of .git/annex with createLink, that are not handled.

In the common case without cross-device, the new moveFile is actually
faster than renameFile, avoiding an unncessary stat to check that a file
(not a directory) is being moved. Of course if a cross-device move is
needed, it is as slow as mv(1) of the data.
2011-11-28 16:17:55 -04:00
Joey Hess
ff2d9c8283 response 2011-11-27 17:09:29 -04:00
http://hcs.furuvik.net/
178a49af75 2011-11-27 20:52:15 +00:00
Joey Hess
2bf3addf49 Bugfix: dropunused did not drop keys with two spaces in their name. 2011-11-27 13:50:05 -04:00
https://www.google.com/accounts/o8/id?id=AItOawnBJ6Dv1glxzzi4qIzGFNa6F-mfHIvv9Ck
ba1ec2c60f 2011-11-25 05:56:59 +00:00
Joey Hess
75a590bdd8 Put a workaround in the directory special remote for strange behavior with VFAT filesystems on Linux (mounted with shortname=mixed) 2011-11-22 18:21:28 -04:00
http://joey.kitenet.net/
fd81b5047b Added a comment 2011-11-22 21:01:14 +00:00
http://joey.kitenet.net/
112399bf1a Added a comment 2011-11-22 20:59:55 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnBJ6Dv1glxzzi4qIzGFNa6F-mfHIvv9Ck
6d7e990dca Added a comment 2011-11-22 20:35:03 +00:00
http://joey.kitenet.net/
eeda534e9a Added a comment 2011-11-22 19:56:55 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnBJ6Dv1glxzzi4qIzGFNa6F-mfHIvv9Ck
b1c601ac8c Added a comment: Case sensitivity 2011-11-22 18:51:04 +00:00
Joey Hess
fc2f0e8b1a response; cannot reproduce 2011-11-22 12:37:51 -04:00
https://www.google.com/accounts/o8/id?id=AItOawnBJ6Dv1glxzzi4qIzGFNa6F-mfHIvv9Ck
35b4706958 2011-11-22 07:09:24 +00:00
Joey Hess
2768be7136 response 2011-11-20 14:19:03 -04:00
https://www.google.com/accounts/o8/id?id=AItOawnBJ6Dv1glxzzi4qIzGFNa6F-mfHIvv9Ck
1de00df636 2011-11-18 21:12:30 +00:00
Joey Hess
1326bb8635 Avoid excessive escaping for rsync special remotes that are not accessed over ssh.
This is actually tricky, 45bbf210a1 added
the escaping because it's needed for rsync that does go over ssh.
So I had to detect whether the remote's rsync url will use ssh or not,
and vary the escaping.
2011-11-18 12:53:48 -04:00
Joey Hess
ed55a750d5 response 2011-11-18 11:58:55 -04:00
http://ertai.myopenid.com/
1516458885 2011-11-18 14:11:08 +00:00
Joey Hess
c70b78d40a migrate: Don't fall over a stale temp file. 2011-11-17 18:29:28 -04:00
Joey Hess
8b892901a9 analysis; not a bug but a feature 2011-11-17 18:20:06 -04:00
https://www.google.com/accounts/o8/id?id=AItOawnBJ6Dv1glxzzi4qIzGFNa6F-mfHIvv9Ck
b3bbc1cbb6 2011-11-17 21:56:55 +00:00
https://www.google.com/accounts/o8/id?id=AItOawnBJ6Dv1glxzzi4qIzGFNa6F-mfHIvv9Ck
abd4e1192f 2011-11-17 21:51:55 +00:00
Joey Hess
2bb6b02948 When not run in a git repository, git-annex can still display a usage message, and "git annex version" even works.
Things that sound simple, but are made hard by the Annex monad being built
with the assumption that there will always be a git repo.
2011-11-16 00:49:09 -04:00
https://www.google.com/accounts/o8/id?id=AItOawmBUR4O9mofxVbpb8JV9mEbVfIYv670uJo
e92534e5b5 Added a comment 2011-11-16 03:24:31 +00:00
https://www.google.com/accounts/o8/id?id=AItOawmBUR4O9mofxVbpb8JV9mEbVfIYv670uJo
eb0c8c955c 2011-11-16 03:22:29 +00:00
Joey Hess
3c45371115 close as resolved 2011-11-15 01:53:28 -04:00
http://cgray.myopenid.com/
d99fa3ec4e removed 2011-11-15 05:22:09 +00:00
http://cgray.myopenid.com/
8d9d94f90c Added a comment 2011-11-15 05:15:47 +00:00
http://cgray.myopenid.com/
eb214f719c Added a comment 2011-11-15 05:14:05 +00:00
http://joey.kitenet.net/
cfc518190c Added a comment 2011-11-15 04:46:13 +00:00
http://joey.kitenet.net/
a6091dc271 Added a comment 2011-11-15 04:40:35 +00:00
http://cgray.myopenid.com/
c093839a40 2011-11-15 00:41:08 +00:00
Joey Hess
aa4fbbdd33 status: Now displays trusted, untrusted, and semitrusted repositories separately. 2011-11-14 16:14:17 -04:00
Joey Hess
71b216d1fb map: Support remotes with /~/ and /~user/
More accurately, it was supported already when map uses git-annex-shell,
but not when it does not.

Note that the user name cannot be shell escaped using git-annex's current
approach for shell escaping. I tried and some shells like dash cannot
cd ~'joey'. Rest of directory is still shell escaped, not for security but
in case a directory has a space or other weird character.
2011-11-11 16:18:53 -04:00
Joey Hess
e4105df78a tested all known types of cycles, all are fixed
My testing involved widening the race by adding sleeps, and making sure
something sane happens in each case.
2011-11-10 03:06:08 -04:00
Joey Hess
a218ce41cf exclusive locks, ugh 2011-11-09 22:15:33 -04:00
Joey Hess
d3e1a3619f safer inannex checking
git-annex-shell inannex now returns always 0, 1, or 100 (the last when
it's unclear if content is currently in the index due to it currently being
moved or dropped).

(Actual locking code still not yet written.)
2011-11-09 18:33:15 -04:00
Joey Hess
8ce7e73f74 reorg to allow taking content lock
The lock will only persist during the perform stage, so the content must
be removed from the annex then, rather than in the cleanup stage.

(No lock is actually taken yet.)
2011-11-09 16:54:18 -04:00
Joey Hess
a243d6e6e9 directly lock content? 2011-11-09 14:32:31 -04:00
Joey Hess
393b6b1bde problem that came to me at 2 am 2011-11-09 13:34:17 -04:00
Joey Hess
2ff8915365 fix 2011-11-08 12:24:56 -04:00
Joey Hess
67c9f84a1f fix broken links 2011-11-08 12:23:03 -04:00
Joey Hess
faa4935047 Handle a case where an annexed file is moved into a gitignored directory, by having fix --force add its change. 2011-11-07 18:10:31 -04:00
gernot
26d3c3b497 2011-11-07 20:55:54 +00:00