1

PaaS providers like Heroku, CloudControl or Exoscale offer deployment using git.

They automatically download dependencies for nodeJS or PHP/Composer applications after pushing the source code. Why?

Why would i not fetch my dependencies locally and upload them to the PaaS provider, e.g. including them in the git repository?

What is the benefit of downloading dependencies/executing "node install" oder "composer install" after executing a git push ?

ulilicht
  • 737
  • 1
  • 7
  • 18
  • I would say this is one or maybe few steps less for the developer to take :) This is what PaaS offers - platform together with dependency management and you just focus on application development. – mkorszun Jun 03 '14 at 14:46

1 Answers1

2

Dependency files should generally not be commited into version control because it usually does not make sense to keep version history about them; because they are potentially OS- or hardware specific and they increase the repository size significantly, making many operations slower. Downloading and building the dependencies in the build process ensures they are compatible with the production runtime, but this is less important for some programming languages than others ofcourse. Notwithstanding this, there can be cases were it does make sense to include dependencies in git. For example when the app is tightly coupled to them (or even modifying them).

Stefan Friesel
  • 823
  • 5
  • 19
  • Thanks for your answer! Platform-dependent dependencies might be the main reason to build the application at the PaaS Providers site. – ulilicht Jun 04 '14 at 08:03