After a bug has been located and fixed, we would like to trace the bug back to the change that originally caused it. That way, our team can look at it and learn how to avoid that type of bug in future changes.
Obviously, if automated tests catch the bug, then it was probably a recent change. But that doesn't work in the case where the bug made it into the wild before it was caught. Are there any tools that can go through the source control history and make an educated guess about which changeset caused a certain bug?