Your garage floor is likely made of concrete, one of the most durable materials on earth. However, it is also a material made up of crushed stone, cement, water, and air, all of which have bonded to form concrete. The negative to this mixture is the large number of tiny air bubbles that naturally occur in concrete; these air bubbles are what let oil and other vehicle leakages seep into the material, as well being what makes it so difficult to fully remove stains.
In order to effectively protect your garage floor from stains, oil or otherwise, you need to seal your floor with a good concrete sealer. Concrete sealers help protect your concrete from natural elements, such as water damage.
If you are looking for a natural finish garage floor sealers like Siloxa-Tek 8505 (water based) or Siloxa-Tek 8510 (solvent based) would be your best options. These sealers will improve protection not only at the topical level; since their larger particles offer a more comprehensive surface protection, the sealer will penetrate and provide protection from within. Both sealers are also deicing salt repellents so they will protect the garage from spalling, pitting and cracking. For oil stains, the key is to seal off the surface of the concrete, which they will do, greatly increasing the durability of the concrete surface. The surface protection will leave the oil pooled on top of the concrete for an easy clean up, rather than leaking into the pores of the concrete to leave a nasty stain.
If you are looking for the most durable products use the Epoxy 325 basecoat followed by the Urethane 645 topcoat. The combiation of the two products will make a garage floor chemically resistant, oil and grease resistant, acid resistant and abrasion resistance. If you are looking for a flake floor system, use the Epoxy Max 100 followed by flakes and the Polyaspartic 930 top coat.