---+ Accessing SWI-Prolog source via GIT [[GIT][]] is a fast version control system developed by Linus Torvalds and currently maintained by Junio C Hamano. Here is our [[motivation][whygit.txt]] for choosing GIT for managing the SWI-Prolog sources. You should use the GIT version if you want to stay *|up-to-date|* and/or you want to [[contribute][]] to the project. Many professional users opt for this route. First install [[GIT][]] for your platform. You need at least version 1.6.0 because the SWI-Prolog repository uses the GIT submodule features. Many modern Unix versions come with GIT installed. If your version is too old, installing a new version from source is simple. On MS-Windows we use [[msysGit][]], which is easily installed and except for being much slower than its Unix counterpart appears to do the job flawlessly. If you want graphical tools on Windows, please check out [[TortoiseGit][]]. With GIT installed, you can clone the repository from one of the addresses below. The HTTP gateway provides you with access if a proxy or firewall denies direct internet access to the git port (9418). * http://www.swi-prolog.org/home/pl/git/pl.git * git://www.swi-prolog.org/home/pl/git/pl.git [[star.gif]] The development version is kept in its own repository at * http://www.swi-prolog.org/home/pl/git/pl-devel.git * git://www.swi-prolog.org/home/pl/git/pl-devel.git [[star.gif]] Initial checkout is achieved using the command below, which creates a directory =|pl-devel|= below the current directory. The download does not contain generated documentation and configuration files, neither the required stand-alone submodules. Use the *|./prepare|* script to fetch these. This script also runs on Windows using the bash-shell that comes with =msysGit=. == % git clone git://www.swi-prolog.org/home/pl/git/pl-devel.git % cd pl-devel % ./prepare == Next, consult the file INSTALL for further instructions for installing SWI-Prolog from source. You can update to the latest version using the following commands from the toplevel directory: == % make distclean (typically you can ignore errors) % git pull % ./prepare % ./build ==