Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> It sounds like you're just working around the limitations of the tools.

It can be hard to recognize, esp. since it has so much cultural inertia and approval, but doing things like splitting things into packages, recording the links in package.json (whether by hand or by tool-assist), and then introducing something like `npm install` into the workflow as a way to lazily fetch parts of a application's codebase is nothing but one massive (and massively fragile) scheme to circumvent the version control system as an consequence of unacknowledged limitations of the relevant tool.



Circumventing version control systems in part because of cognitive dissonance. If your dependencies are too big to check in, maybe you should look at that.

With NodeJS in particular, the issue of binaries is sort of dodged by exploding the files out instead of reading them from archives like Java does. However version conflicts can easily result in many versions of the same files in your repository, so you're still in a bit of trouble where bloat is concerned. While you should start by putting your dependencies on a diet, a different organizational structure for files than what git uses, where copies and moves are tracked better would help a lot.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: