Invest in a supersoaker. Then stake out a post near the garden in some unobtrusive spot. My wife will throw clods of dirt at any of our 7 cats that trespasses on her garden. It gets them out for the moment, but a more permanent solution is a puzzlement.