I'm considering moving my blog, Dream In Tech, which is WordPress CMS running on my Rackspace Cloud Server, to GitHub Pages because I'm starting to have performance issues, but how to move the posts, tags and all this kind of stuff?
As I understand it, GitHub Pages simply host static content that you upload to your git repository. That means there's no server-side scripting. So, while it's doable, it's not gonna be a straightforward migration.
It's recommended that you use Jekyll to generate your site if you want to use templating and build more complex layouts, but you still have to generate static HTML.
I haven't tried Jekyll out (or Git and Github for that matter), so I don't know how well it helps you manage content. Supposedly it integrates real well with Github, and at least Development Seed seems real happy with it.
But you'll need to do a little bit of scripting and tweaking to get everything set up. That "little" bit is discussed here in this 8000+ word blog post. Maybe if you're less picky there'll be less work, since Jekyll does seem to come with migration scripts for most popular blogging platforms.
Another thing to note is that with tags and archived pages set up, the author states it took 50 min. for site generation. That means it takes 50 min. to publish a new blog post (after it's all been written) and to make layout changes. So he ended up ditching those features to speed up his site generation time. You may need to make similar sacrifices if your site starts growing or already has lots of content.
Since GitHub only serves static content have you considered implementing WP-Supercache plug-in? This speeds your site up by serving flat html rather than producing each page dynamically.
Other options include the free service offered by Clouldflare, Google's free CDN, and implementing Yahoo's Front! End! Optimization! Guidelines! (and using their YSlow? Plugin to locate the source of the performance problem.
Should also give a shout-out to Google's page speed plugin.