I just use transisters for my motors, but I don't know how to reverse them.
You need to build an h-bridge; you can do this by using two 2n2222 (NPN) and two 2n3906 (PNP) transistors (the 2n3906 is the "complement" of the 2n2222 - that is, not only is it a PNP transistor, but it also has similar specifications to the 2n2222; this is important for a variety of reasons - especially in an h-bridge).
You will also need four diodes, and four base resistors. When using an h-bridge, you must make sure to turn on only one pair of transistors (diagonal legs), and leave the other pair off to avoid "shoot thru" which can smoke the transistors. This can be more difficult than it sounds, especially with a microcontroller, because if you just wire the outputs to the transistors (even if you only use two outputs - one for each pair) - when the microcontroller is powered on, its outputs may be in an unknown state - if both outputs are HIGH (all transistors on), the smoke is released.
There are ways around this, but until you understand what an h-bridge is and how it works, you won't really understand how to implement them.
You can also build an h-bridge with a couple of relays. Just do some research on h-bridge motor control - you'll find plenty of examples on the internet. BTW - it is possible to build an h-bridge using only NPN transistors, but it is generally better to use complementary transistor pairs of NPN and PNP. Also note that you may run across something called a "half h-bridge", which, if designed properly (and using a dual-ended power supply), can allow you to control the direction of a motor using only two transistors, instead of four. This used to be advantageous from a cost standpoint; the old Milton Bradley Big Trak used such a configuration for its drive motors. Nowadays, these transistors are dirt cheap, but its still something to keep in mind if space is tight on a board and you have a dual-ended power supply available...
Alternatively, you can buy small h-bridge driver ICs like the L293 and the L298 that make h-bridge implementation very easy (note: the L298 will -not- plug into a breadboard or standard 0.1" hole spacing PCB - but there are adapters available).