Working with gtkmm's Source Code
If you are interested in helping out with the development of gtkmm, or fixing a bug in gtkmm, you'll probably need to build the development version of gtkmm. However, you should not install a development version over your stable version. Instead, you should install it alongside your existing gtkmm installation, in a separate path.
The easiest way to do this is using jhbuild. jhbuild is a program that makes building GNOME software much easier by calculating dependencies and building things in the correct order. This section will give a brief explanation of how to set up jhbuild to build and install gtkmm from the source repository (git). For up-to-date information on jhbuild, please refer to the jhbuild manual. If you need assistance using jhbuild, you should ask for help on the gnome-love mailing list.
Note that to build gtkmm from git, you'll often need to build many of its dependencies from git as well. jhbuild makes this easier than it would normally be, but it will take quite a while to build and install them all. You will probably encounter build problems, though these will usually be corrected quickly if you report them.

Setting up jhbuild
To set up jhbuild, follow the basic installation instructions from the jhbuild manual. After you have installed jhbuild, you should copy the sample jhbuild configuration file into your home directory by executing the following command from the jhbuild directory:

$ cp examples/sample.jhbuildrc ~/.jhbuildrc

The gtkmm module is defined in the gnome-suites-core-deps-3.x.modules moduleset, so edit your .jhbuildrc file and set your moduleset setting to the latest version e.g. like so:

moduleset = 'gnome-suites-core-deps-3.12'

After setting the correct moduleset, you need to tell jhbuild which module or modules to build. To build gtkmm and all of its dependencies, set modules like so:

modules = [ 'gtkmm' ]

You can build several modules by setting the modules variable to a meta-package, e.g. meta-gnome-core, or listing more than one module name. The modules variable specifies which modules will be built when you don't explicitly specify anything on the command line. You can always build a different moduleset later by specifying it on the commandline (e.g. jhbuild build gtkmm).

Setting a prefix
By default, jhbuild's configuration is configured to install all software built with jhbuild under the /opt/gnome prefix. You can choose a different prefix, but it is recommended that you keep this prefix different from other software that you've installed (don't set it to /usr!) If you've followed the jhbuild instructions then this prefix belongs to your user, so you don't need to run jhbuild as root.
When you downloaded jhbuild from the git repository, you got a number of .modules files, specifying dependencies between modules. By default jhbuild does not use the downloaded versions of these files, but reads the latest versions in the git repository. This is usually what you want. If you don't want it, use the use_local_modulesets variable in .jhbuildrc.

Installing and Using the git version of gtkmm
Once you've configured jhbuild as described above, building gtkmm should be relatively straightforward. The first time you run jhbuild, you should run the following sequence of commands to ensure that jhbuild has the required tools and verify that it is set up correctly:

$ jhbuild bootstrap
$ jhbuild sanitycheck

Installing gtkmm with jhbuild
If everything worked correctly, you should be able to build gtkmm and all of its dependencies from git by executing jhbuild build (or, if you didn't specify gtkmm in the modules variable, with the command jhbuild build gtkmm).
This command will build and install a series of modules and will probably take quite a long time the first time through. After the first time, however, it should go quite a bit faster since it only needs to rebuild files that changed since the last build. Alternatively, after you've built and installed gtkmm the first time, you can rebuild gtkmm by itself (without rebuilding all of its dependencies) with the command jhbuild buildone gtkmm.

Using the git version of gtkmm
After you've installed the git version of gtkmm, you're ready to start using and experimenting with it. In order to use the new version of gtkmm you've just installed, you need to set some environment variables so that your configure script knows where to find the new libraries. Fortunately, jhbuild offers an easy solution to this problem. Executing the command jhbuild shell will start a new shell with all of the correct environment variables set. Now if you re-configure and build your project just as you usually do, it should link against the newly installed libraries. To return to your previous environment, simply exit the jhbuild shell.
Once you've built your software, you'll need to run your program within the jhbuild environment as well. To do this, you can again use the jhbuild shell command to start a new shell with the jhbuild environment set up. Alternatively, you can execute a one-off command in the jhbuild environment using the following command: jhbuild run command-name. In this case, the command will be run with the correct environment variables set, but will return to your previous environment after the program exits.