It really comes down to marketing. Just because you put a project on github doesn't mean that everyone will suddenly know about it. You need to figure out what kind of people might be interested in your project and where they can be found. Then, you need to find a way to let them know your project exists (in a way that won't just annoy them and turn them off). If you can't find people that are interested in your project, you need to think about finding a different project idea, or developing your project to the point where people will start seeing value in it.
Generally, your project will need to be far enough along that people will see some benefit in what you have, and will feel like their contributions will be worth it. There's far too many projects that start as a little idea and then just die. People aren't going to want to invest any time and effort into something that just isn't going anywhere.
Finally, when you finally get some contributors, you need to treat them well. You really want to foster a sense of community around your project. You want to seriously consider what your contributors have to say and the kind of changes they want to make. That doesn't mean you have to accept everything, but you need to have really good reasons for rejecting a contribution.