Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.
I always teach Fly to one of my party because its annoying to deposit and withdraw everytime you want to fly somewhere. I taught Rock Smash and Cut to Bidoof but then lost it somewhere in my box and taught Rock Smash to my Empoleon (I know...) and ended up teaching Strength and Rock Climb to party Pokemon too. I taught Surf to my Empoleon which is OK. And I taught a Zubat Defog.
My HM slaves vary:
In the start of the game, I used a Geodude for Rock Smash and Kricketune for Cut and Flash. Then I taught the Geodude Strenght. When I caught a Bibarel, I taught it Rock Smash, Strenght then later Surf and Rock Climb. For Fly and Defog I used an Staravia (to not waste my Staraptor's moves). Today for Fly, I use various pokémon: Skarmory, 2xStarly, Chatot, etc.
I use Gible. I've heard a lot of people make a big deal out of catching them, so I figured I'd have one... But I'm not interested in using Gibles for battling. So I taught her rock climb, cut, rock smash, and strength. The other hm moves are scattered around some of my other pokemon.
I only hane two of them. Bibarel & um.. Geodude. I used Surf for my empoleon though, together with Aqua Jet it's disasterous =D
Bibarel has Cut, Flash & Rock Smash. I used Geodude for Rock Climb. & for Waterfall? I am not that far yet in my Pearl Dx But I will probably use Goldeen, as so many people around here said so. =]