Using Git in mounted encfs drive via Dokan

826 views Asked by At

I would like to use Git for a software project which resides inside an encfs enctrypted drive mounted via Dokan (Windows environment). The Encryption of the files works just fine, unfortunately Git does not seem to like working in this environment. When initializing the Git repository I encounter the error message:

error: could not commit config file w:/djangodance/.git/config

When committing I encounter this - disk is writeable and quota is not exceeded:

fatal: Repository has been updated, but unable to write new_index file. Check that disk is not full or quota is not exceeded...

So far I have learned that Git does not seem to like certain drive-mounting-setups. This article (mounting remote filesystem via sshfs) proposes a workaround option (-oworkaround=rename).

My questions:

  1. Did I locate the source of the problem correctly?
  2. Is there some similar setup for Dokan which works with Git?
  3. Is there a different approach which could satisfy on-the-fly encryption using Windows? I'd rather not use TrueCrypt since it is not as useful in combination with Dropbox.

Thank you for any hint!

2

There are 2 answers

0
Chris On BEST ANSWER

The latest release of Dokan appears to be nearly three years ago. I don't imagine you'll get much support with it, even from the community.

You may want to consider using Bitlocker, a full-drive encryption system. Or possibly Encrypting Filesystem to encrypt your development directory. Both of these options are included in recent versions of Windows, and should be fully supported by Microsoft.

0
Liryna On

Dokany is a fork of Dokan. It is very active by the maintainers and the community. It is now know as the main solution for writing driver and porting FUSE to Windows with the same code.

It also have the fix that you would be interested: https://github.com/dokan-dev/dokany/pull/39 There was a problem with MoveFileEx. Without the fix this API fails with "permission denied" because the target file is opened and cannot be deleted. Now the git command works via dokan!