Certain options and actions throughout the game decide who goes on a date with Cloud. The wiki explains it better than me.
For Tifa, you gotta choose the options that stay more at her side.
For Aerith, same as Tifa, but in Aerith's side obviously.
For Barret, you gotta be rude to the girls and even be rude with him, in a certain way (I think?).
For Yuffie, just be an asshole to everyone.