git-annex/Annex
Joey Hess 721cc0cd22 rework annexed object locking in direct mode & support Windows
Seems that locking of annexed objects when they're being dropped was broken
in direct mode:

* When taking the lock before dropping, it created the .git/annex/objects
  file, as an empty file. It seems that the dropping code deleted that,
  but that is not right, and for all I know could in some situation cause
  a corrupted object to leak out.
* When the lock was checked, it actually tried to open each direct mode
  file, and checked if it was locked. Not the same lock used above, and
  could also fail if some consumer of the file locked it.

Fixed this, and added windows support by switching direct mode to lock a
.lck file.
2014-01-28 16:43:11 -04:00
..
Branch global numcopies setting 2014-01-20 16:47:56 -04:00
Content Direct mode .git/annex/objects directories are no longer left writable 2013-11-15 14:52:03 -04:00
Direct fix reversion in relative paths to local remotes of direct mode repos 2013-11-26 19:33:26 -04:00
Branch.hs remove debug print 2014-01-26 17:04:12 -04:00
BranchState.hs remove git-annex branch read cache 2012-10-19 14:25:15 -04:00
CatFile.hs Add plumbing-level lookupkey command. 2013-12-15 14:02:23 -04:00
CheckAttr.hs finished where indentation changes 2012-12-13 00:24:19 -04:00
CheckIgnore.hs hlint 2013-09-25 03:09:06 -04:00
Content.hs rework annexed object locking in direct mode & support Windows 2014-01-28 16:43:11 -04:00
Direct.hs Fix direct mode's handling when modifications to non-annexed files are pulled from a remote. A bug prevented the files from being updated in the work tree, and this caused the modification to be reverted. 2013-12-12 15:57:09 -04:00
Drop.hs fix transfers of key with no associated file 2014-01-23 16:44:02 -04:00
Environment.hs hlint 2013-09-25 03:09:06 -04:00
Exception.hs rework annexed object locking in direct mode & support Windows 2014-01-28 16:43:11 -04:00
FileMatcher.hs fix transfers of key with no associated file 2014-01-23 16:44:02 -04:00
Hook.hs refactored hook setup 2013-11-05 15:29:56 -04:00
Init.hs reorg 2014-01-26 16:36:31 -04:00
Journal.hs use locking on Windows 2014-01-28 14:42:03 -04:00
Link.hs hlint 2013-09-25 03:09:06 -04:00
LockPool.hs use locking on Windows 2014-01-28 14:42:03 -04:00
Path.hs move programPath out of Config.Files to Annex.Path 2013-11-24 16:03:03 -04:00
Perms.hs Ensure execute bit is set on directories when core.sharedrepsitory is set. 2013-11-18 18:13:09 -04:00
Queue.hs type based git config handling for remotes 2013-01-01 13:58:14 -04:00
Quvi.hs hlint 2013-09-25 03:09:06 -04:00
ReplaceFile.hs Fix a few bugs involving filenames that are at or near the filesystem's maximum filename length limit. 2013-07-30 19:18:29 -04:00
Ssh.hs run ssh in the directory with its socket when stopping 2013-10-06 21:11:39 -04:00
TaggedPush.hs sync, assistant: Force push of the git-annex branch. 2013-08-29 14:27:53 -04:00
Url.hs Send a git-annex user-agent when downloading urls. 2013-09-28 14:35:21 -04:00
UUID.hs automatically derive an annex-uuid from a gcrypt-uuids 2013-09-05 16:02:39 -04:00
Version.hs Auto-upgrade v3 indirect repos to v5 with no changes. This also fixes a problem when a direct mode repo was somehow set to v3 rather than v4, and so the automatic direct mode upgrade to v5 was not done. 2013-12-29 13:06:23 -04:00
Wanted.hs fix transfers of key with no associated file 2014-01-23 16:44:02 -04:00