Best practices for project versioning among devs using git

Hello all,
I would share my Ionic project with others developers using GIT versioning but I’m not sure about which directories exclude by .gitignore.

Theoretically I only need www/ directory and it’s contents, but how do we manage libs, cordova plugins dependencies?

I wonder we should add a “bootstrap” bash script that updates all npm stuffs, bower things and finally launch ionic serve --lab but wich commands in it?

Any clue on it?

Until now I’ve versioned:

  • bower.json
  • .bowwerc
  • config.xml
  • .gitignore
  • gulpfile.js
  • hooks
  • ionic.project
  • node_modules
  • package.json
  • platforms
  • plugins
  • resources
  • scss
  • www

Cloning this repository one dev of us is unable to ionic serve its repository. Any chance to get minimal repository and then let each developer build he’s environment by automatic script?