Developers commit compiled node_modules into Git so municipal deploys feel reproducible, but diffs are noisy and CI still sees platform skew. What is the better approach?
Select an answer to reveal the explanation.
Short Explanation
Your laptop folder is not the release train. Lock the dependency graph, then let CI assemble a clean artifact so Beanstalk or Lambda gets what was tested—not whatever was last npm-installed on someone's Mac. Checking in node_modules just papers over the real build.
Full Explanation
Separating build from deploy means CI produces artifacts from declared dependencies (for example, package-lock.json or equivalent) rather than uploading developer working trees. Committing node_modules creates noisy diffs, OS/CPU binary mismatches, and false reproducibility. Floating ranges without lockfiles and desktop FTP deploys increase skew for civic services. Lockfiles plus CI builds are the DVA-C02 packaging practice.