git-annex now does Windows!
First, install Git for Windows
Important: Get the 32 bit version not the 64 bit version.
If you installed the 64 bit version of git, then parts of git-annex will still run, however, some features, including tools like rsync, will not work.Then, install git-annex
This port is now in reasonably good shape for command-line use of git-annex. The assistant and webapp are also usable. There are some known problems and parts that don't work. See windows support for current status.
To verify that the build of git-annex works in your Windows system, you are
encouraged to run the test suite before using git-annex on real data. After
installation, run git annex test
. There will be a lot of output; the
important thing is that it should end with "All tests passed".
autobuilds
An hourly autobuild is also available, thanks to Yury V. Zaytsev and Dartmouth College.
building it yourself
To build git-annex from source on Windows, you need to install Git for Windows, and Stack.
You also need to install rsync for windows. It needs to be linked with the same MINGW32 libraries that come with Git for Windows. One way is to download it from https://downloads.kitenet.net/git-annex/windows/assets/. Put it somewhere in PATH.
Then open Git Bash, clone git-annex, and in git-annex's source tree, run "stack build --stack-yaml stack-windows.yaml" to download and build all dependencies and git-annex. "stack install --stack-yaml stack-windows.yaml" will install git-annex.
(To build the git-annex installer, you also need to install the NullSoft
installer system. The script standalone/windows/build.sh
is
used to make the builds linked to above.)
To install git-annex next to 64bit git on Windows:
Start cmd.exe with administrator privileges and run mklink /J "C:\Program Files (x86)\Git" "C:\Program Files\Git" to add a sym-link. Install git-annex.
@eren, some of the programs included with git-annex need to use libraries from Git for Windows. In particular, I think you'll find that rsync doesn't work if you use the 64 bit Git for Windows.
rsync is still used for some things, the rsync special remote and communication with servers using older versions of git-annex.