I have a project that uses couple (for now ~6) dependencies (other libraries). Most of them are on MIT/simplyfied BSD licences so it should not be a problem to just copy them to my repo.
Would it be good practice to put all those libraries to my repo and push them (and when new versions will come, update them too)? Or my project repo should only contain project files (code, assets etc.)?
Pros:
- building is so much simplier as I have all that I need always close
- added libraries means that I tested my project using those versions, as others (older/newer) might create some problems
Cons:
bloat in project repo
have to update dependencies by hand
if I would like to paste also built versions, I would have to paste a lot of
files and it would take a lot of space, so probably stick to source only?
some libraries might have not so nice license and using them directly (other than requiring user to obtain valid library by himself) and placing them in my repo might make some troubles
having more projects to keep up dependencies would mean that I have to update them for all projects at the same time (e.g. if I make some other projects depending on current project (it's library) then they all will have same dependnecies)