Version control awareness #263
-
Hello, How can I make use of stack graphs in a version control-aware manner? Let's say, I have a code repository from version control (git). e.g.:
|
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 1 reply
-
Hi! The library is certainly designed to fit an incremental model compatible with version control. However, there is no provided orchestration for that. Let me elaborate. The overall idea is along the lines that you suggest.
This approach becomes nicely incremental when the results from (1) are stored based on the Git blob oid. If a blob doesn't change from one commit to the next, its blob oid will be the same, and the previous data can be used as-is. (Caveat: this is only true if the constructed stack graph only depends on the file content. Otherwise, the key should reflect all elements that went into the process. The principle stays the same, but incrementality may suffer.) We are currently doing some work on the |
Beta Was this translation helpful? Give feedback.
Hi! The library is certainly designed to fit an incremental model compatible with version control. However, there is no provided orchestration for that. Let me elaborate.
The overall idea is along the lines that you suggest.
For each blob in a commit, construct a stack graph and compute partial paths. Store these.
Resolve references using path stitching. The path stitcher is phased, and the result of the previous phase can be used to lazy load partial paths that may be relevant for the next phase.
This approach becomes nicely incremental when the results from (1) are stored based on the Git blob oid. If a blob doesn't change from one commit to the next, its blob oid will be the same…