Question

Could you please explain why such approach is not already existing and not widely in use?

Or if such a toolset exists, can you cite it?


Why is it that version control systems (VCS) are working on files (clearcase, svn, git e tc)? and not on units/functions?

So to track changes in a functionality one have to analyze versions of file (sometimes several files) -- as an example: if I want to analyze "Change functionality" I would get a history of that module/function and see it in one place.

If such a tool would exist... then, a software configuration tool (SCM) would put these units and/or functions together in a release configuration. Why is it, we still use Makefile, build.xml, plugin.xml e tc?

And about build: is it really necessary for a compiler to have files? if the SCM could prepare an input for a build tool and get binaries?

C/C++ for example: such a SCM could prepare the whole source in one chunk and get binary out of compiler. In case of Java: SCM could prepare .java classes and get .jar out of compiler.

Thank you.


PS: I do not search for solution for any particular problem, it is more about method. In every project same approach on source/config/build. Well with different tools, which are evolving... but there is no new approach/method to address complex systems in a different way.

Was it helpful?

Solution

if I want to analyze "Change functionality" I would get a history of that module/function and see it in one place.

If such a tool would exist

It does actually: see "Can Git really track the movement of a single function from 1 file to another? If so, how?", and its git blame -C command.

Why is it, we still use Makefile, build.xml, plugin.xml etc?

If is about declaration: you declare what you want to build, but most importantly in which order and the dependencies you need.

if the SCM could prepare an input for a build tool and get binaries?

The input for the build tool remains files, not "units/functions": the compilations tools are much more evolved and equipped to parse/analyze and extract those units, building the binary as a result.
Putting too much responsibilities in the sole SCM tool seems try to do it all, which means it will do "all" not too well, as opposed of doing one thing brilliantly.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top