If you started with bulbasaur or squirtle you will not have any problems but if you started with charmander try to catch a butterfree and teach it some good moves. Gives you tm 34 that contains bide. Allows you to use flash.
bulbasaur is your best bet here. Beating here will let pokemon up to level 30 obey, and use cut when you get it. Gives you tm 11.
Hopefully you caught a diglet of geodude to use in this battle. Gives you tm 24. Lets you use fly.
Bring a fire or flying type with you to beat Erika. Gives you tm 21 and lets pokemon up to level 50 obey you.
Use a pokemon that has bug attacks or use a ghost pokemon to make quick work of Sabrinas high team. Gives you tm 46 which contains tm 46 psywave. Up to level 70 will obey.
Use ground psychic or a flying type pokemon here. Gives you tm 06 which contains toxic.
Use a water pokemon to smoke Blaine away. Gives you tm 38 which contains fire blast.
Use water, psychic, and ground for Giovanni. Gives you tm 28 which contains fissure. Allows pokemon of any level to obey you.