1. 04 Feb, 2015 1 commit
  2. 03 Feb, 2015 1 commit
  3. 30 Jan, 2015 1 commit
  4. 20 Jan, 2015 1 commit
  5. 19 Dec, 2014 2 commits
  6. 17 Dec, 2014 1 commit
  7. 16 Dec, 2014 3 commits
    • checkout: disallow bad paths on HFS · 11d67b75
      HFS filesystems ignore some characters like U+200C.  When these
      characters are included in a path, they will be ignored for the
      purposes of comparison with other paths.  Thus, if you have a ".git"
      folder, a folder of ".git<U+200C>" will also match.  Protect our
      ".git" folder by ensuring that ".git<U+200C>" and friends do not match it.
      Edward Thomson committed
    • checkout: disallow bad paths on win32 · a64119e3
      Disallow:
       1. paths with trailing dot
       2. paths with trailing space
       3. paths with trailing colon
       4. paths that are 8.3 short names of .git folders ("GIT~1")
       5. paths that are reserved path names (COM1, LPT1, etc).
       6. paths with reserved DOS characters (colons, asterisks, etc)
      
      These paths would (without \\?\ syntax) be elided to other paths - for
      example, ".git." would be written as ".git".  As a result, writing these
      paths literally (using \\?\ syntax) makes them hard to operate with from
      the shell, Windows Explorer or other tools.  Disallow these.
      Edward Thomson committed
    • win32: use NT-prefixed "\\?\" paths · cceae9a2
      When turning UTF-8 paths into UCS-2 paths for Windows, always use
      the \\?\-prefixed paths.  Because this bypasses the system's
      path canonicalization, handle the canonicalization functions ourselves.
      
      We must:
       1. always use a backslash as a directory separator
       2. only use a single backslash between directories
       3. not rely on the system to translate "." and ".." in paths
       4. remove trailing backslashes, except at the drive root (C:\)
      Edward Thomson committed
  8. 17 Sep, 2014 1 commit
  9. 16 Sep, 2014 1 commit
  10. 08 Sep, 2014 1 commit
  11. 03 Sep, 2014 1 commit