UpdatingMSysGit - wnoguchi/msysgit GitHub Wiki
Together with Git for Windows, the build environment msysGit advances, too. If you want to stay on top of those developments, just use Git itself.
NOTE: to follow these instructions, you really have to have installed msysGit, not just Git for Windows.
First of all, if you installed msysGit via the fullinstall package, you will have to run
/share/msysGit/initialize.sh
to put your setup into the same state as it would have been after running the netinstall.
NOTE: to follow these instructions, you really have to have installed msysGit, not just Git for Windows. Really. If you do not have /share/msysGit/initialize.sh, you have Git for Windows, not msysGit. If you do not know what the difference is, you will have to learn about that before you can continue.
It is convenient to install shortcuts (such as a QuickLaunch icon) with /share/msysGit/add-shortcut.tcl
After that, you will have to decide what you are interested in, the git submodule, or the super project.
Initially, the submodule will be checked out at the revision committed to the super project. If you want to stay up-to-date with the recent developments in 4msysgit (the msysGit specific fork of the official Git project), you need to set up a tracking branch for the devel branch:
git checkout --track origin/devel
This only needs to be done once, all subsequent updates can be performed by
git pull
(Of course, if you want to track master instead of devel, you have to adjust the commands appropriately.)
Note that there are several branches in 4msysgit.git; all branches except for master (the ultra-stable branch) and devel (the less stable, more current one) are subject to frequent rewinding and developments until they are either merged or scrapped.
If you want to help with msysGit (and you do, right, because we are the good guys, right?), you might want to check out and test the changes which are to be in the upcoming release. First, start a Git Bash and switch directory to the Git submodule:
cd /git
Then, make sure that you're on 'devel' and that you have the newest changes:
git checkout devel git pull origin devel
You might not even have a 'devel' branch yet, in which case you have to
git checkout -t origin/devel
Now, build Git:
make
To run the test suite (which might take a long time, start the run-tests.sh script:
/share/msysGit/run-tests.sh
Once this finished, it will tell you which tests failed. These, you have to run manually:
sh t7200-* -i -v
The -i option tells the test script to stop on failure, and -v makes it verbose. If the verbosity is not sufficient, try with
sh -x t7200-* -i -v
which tells the bash to reveal to us what command it just called.
Note: Earlier installers did not set up the post-checkout hook which is necessary to be able to update the bash and msys-1.0.dll components; please check that you have a file /.git/hooks/post-checkout, and if it is missing, copy it from /share/msysGit/post-checkout-hook!
The build environment around Git for Windows is managed in the superproject (AKA msysGit itself). After installing it with the netinstall package (or converting a fullinstall into the same state), updating is just a matter of
git pull
By default, you are on the master branch, but you can follow the more current devel branch, too:
git checkout --track origin/devel
The same principle as for the branches of the Git submodule applies to the branches of the superproject msysGit.
As Git Cheetah is much more experimental than Git itself, its development is done directly on the master branch.
Please see GitCheetah for details.