There are some new IOS commands to automate upgrading of a stack, but I use the familiar manual method.
All of your stack members really should be running the same version of IOS (even though there's a chance that if the versions are close enough the stack might still work).
Upgrading a switch is like upgrading a router, really. You put the new IOS on the TFTP server. Make sure there is room for it in the flash of the target device, and tftp it up. When you are ready to start using it, change the boot system command on the device to point to it, and reload.
What makes switch stacks different is that you need to copy the IOS to all of the switches. Here's how.
1)Log into your stack. (You'll be logged into the master). Do show stack to find out how many switches are in the stack, and which one is the master. Let's say there are four switches and the master is 4.
2)Use copy tftp flash: and answer the prompts to get your IOS up there.
3)You can do dir flash: to see that the new IOS is there. When you refer to "flash:", you are always referring to the master. You can also refer to a particular stack member's flash like this: dir flash2:. So on this stack, where 4 is the master, dir flash: and dir flash4: will look the same.
4)Now get that IOS image onto the other switches in the stack. You can either tftp it to each in turn with copy tftp flash1: and so on, or use copy flash4: flash1:. The copy method is only a little quicker, but it works.