git-fat icon indicating copy to clipboard operation
git-fat copied to clipboard

Cannot stage binary file on Windows

Open drauch opened this issue 10 years ago • 9 comments

After solving my Python version problem, git fat push / git fat pull executes smoothly. However, when trying to stage my first binary file, I get the following error:

Stage 1 files
error: cannot feed the input to external filter git-fat filter-clean
error: external filter git-fat filter-clean failed
Done

Looks like something is still misconfigured? I executed git fat init, configured .gitfat and .gitattributes correctly. What else could I have done wrong?

Is git-fat at the moment Windows ready?

drauch avatar Jun 24 '14 09:06 drauch

Windows is not currently supported. I don't know what's going on in your error message, but I cannot test on Windows and I need to have confidence that encoding is done correctly before I can merge a pull request.

jedbrown avatar Jun 24 '14 14:06 jedbrown

Okay, thank you very much. It would be nice to read "Windows not supported" on the start page of your project, would have saved me half a day ;-)

drauch avatar Jun 24 '14 15:06 drauch

Thank you anyways for you fast replies!

drauch avatar Jun 24 '14 15:06 drauch

drauch, your error is because git doesn't know what is fat filter. You need something like this: $ git config --global filter.fat.clean git-fat filter-clean $ git config --global filter.fat.smudge git-fat filter-smudge

This add config options which you can check using: git config --list (...) filter.fat.clean=git-fat filter-clean %f filter.fat.smudge=git-fat filter-smudge %f

Are you sure you have git-fat in system PATH?

omikronsc avatar Jun 24 '14 16:06 omikronsc

@omikronsc: The configuration is already set with git fat init, and yes, git-fat is in the system PATH.

drauch avatar Jun 25 '14 08:06 drauch

@drauch: This doesn't make sense. Did you add git-fat to PATH globally? There are subprocesses called without altering global PATH. Can you invoke 'git-fat' (WITH '-')?

omikronsc avatar Jun 25 '14 10:06 omikronsc

Could this be related to rsync not being available on Windows?

jsvanbethlehem avatar Jul 10 '14 08:07 jsvanbethlehem

Well I made git-fat working on Windows. See my branch https://github.com/omikronsc/git-fat .

I branched out from https://github.com/PersonifyInc/git-fat. They ported git-fat to Python 3. But they focused on Amazon storage and forget some functions for rsync, which I added in my branch.

Then I setup environment for git-fat to work. I used git Windows installer to have bash-like command line and added rsync from another MinGW installation. Files needed to rsync work under git-bash: rsync.exe msys-iconv-2.dll msys-intl-8.dll msys-popt-0.dll

Files are located in <MinGW>/msys/1.0/bin but you have to install rsync manually, it's not default package. Files has to be copied into /bin.

To sum up. You need git msys installer, another MinGW with rsync and my branch of git-fat.

omikronsc avatar Jul 10 '14 09:07 omikronsc

Just FYI: the cyaninc/git-fat repo added support for Windows. All dll/exe dependencies are shipped (awk, rsync, ssh), so it works out of the box. Currently you can install it only from sources (by running the win32/setup_wheel.bat script), as the wheel package has not yet been uploaded to PyPI.

cztomczak avatar Jan 07 '15 11:01 cztomczak