Would it be good practice to keep only the bower.json file and gitignore the whole bower_components directory?
The .gitignore file in a newly generated Yeoman AngularJS project has bower_components (and node_modules) listed to be ignored (if you don't know Yeoman it is a very reputable web scaffolding tool for modern webapps, so that's good enough for me!):
.gitignore
node_modules
dist
.tmp
.sass-cache
bower_components