Well, for me it depends on what I'm craving and how long I've been craving it. My first line of defense is to ignore it or substitute something else for it if possible and if I'm actually hungry (for instance I'll put a little lite chocolate syrup on my yogurt to satisfy a craving for chocolate). If that doesn't work, I'll try the distraction technique ... clean, work out, brush my teeth, read a book, remind myself of my weight-loss goals, etc. One big help is that I no longer keep foods I'm likely to crave (that are unhealthy) in the house: there are no chips, candy bars, soda, etc. in my cupboards. Now, having said all that, I do not function well with "deprivation." That's why I am not on a diet — there is nothing that is absolutly forbidden, that just makes me want it more
So if I've having a hardcore craving for something and if I've had it for days, and just cannot shake it — I'll eat it, but I have to count it in towards my calories for the day (which is often enough for me to stop craving the food). So, I may need to work out a little harder and make better choices for the rest of the day. One more thing, for instance, if I were craving chips, and decided to go ahead and eat some, I'd only buy one of those little snack-size bags, not one of the super big bags - otherwise I might eat the whole bag !
Hope that helps.