code sharing is more internal to Arc* product users. It also doesn't allow you to automatically maintain your package like you can do with a github repository. Normally, you zip and ship your application to the code sharing site..
There is nothing to stop you for using both (I do) since they target different audiences sometimes. I like github for the ability to provide extensive documentation and background information and you can examine the code to see if it work downloading/installing in the first place.