sync: Fix bug that caused direct mode mappings to not be updated when merging files into the tree on Windows.

This commit is contained in:
Joey Hess 2013-09-13 13:49:28 -04:00
parent 65fe2314be
commit ab9dd6d8a0
3 changed files with 23 additions and 1 deletions

View file

@ -15,7 +15,7 @@ import qualified Git.DiffTree as DiffTree
import Git.Sha
import Git.Types
import Annex.CatFile
import Utility.FileMode
import Git.FileMode
import qualified Annex.Queue
import Logs.Location
import Backend

20
Git/FileMode.hs Normal file
View file

@ -0,0 +1,20 @@
{- git file modes
-
- Copyright 2013 Joey Hess <joey@kitenet.net>
-
- Licensed under the GNU GPL version 3 or higher.
-}
{-# LANGUAGE CPP #-}
module Git.FileMode where
import Utility.FileMode
import System.PosixCompat.Types
{- Git uses a special file mode to indicate a symlink. This is the case
- even on Windows, so we hard code the valuse here, rather than using
- System.Posix.Files.symbolicLinkMode. -}
isSymLink :: FileMode -> Bool
isSymLink = checkMode 40960

2
debian/changelog vendored
View file

@ -6,6 +6,8 @@ git-annex (4.20130912) UNRELEASED; urgency=low
(Thanks, anarcat for display code and mastensg for inspiration.)
* fsck: Fix detection and fixing of present direct mode files that are
wrongly represented as standin symlinks on crippled filesystems.
* sync: Fix bug that caused direct mode mappings to not be updated
when merging files into the tree on Windows.
-- Joey Hess <joeyh@debian.org> Thu, 12 Sep 2013 12:14:46 -0400