If you want to track capistrano deploy script in github but don't wish to upload it to production server, I would suggest that you separate out the capistrano into a separate project. Othwerwise, I don't think it can be helped that capistrano code is deployed to production server.
If you really don't want the capistrano script to be there, then I would suggest that you create an additional task that simply deletes the capistrano folder on production.