Although Drupal itself provides a central CVS repository for the Drupal core code and contributed projects management, it is well known that people use other tools for their own purposes. There were several ocassions, when private Subversion repositories were used to develop new core functionality (such as Forms API or the multilanguage changes coming up in Drupal 6). Some people also like using BZR to manage their own changes easily.
A very detailed introduction hit my web browser today though, explaining how can you manage and even upgrade your Drupal installation (including contributed modules) using Git, even keeping local modifications.