3 ms·
> Then adding "Fix" to another channel will automatically pull in the "dependent change" "pre_Foo" as well, if applicable? Or is a separate "new_Fix" created?
by pmeunier 6y ago
> Then adding "Fix" to another channel will automatically pull in the "dependent change" "pre_Foo" as well, if applicable? Or is a separate "new_Fix" created?
I'm not 100% certain of which is which in your sentence, but if Fix and Fox are in conflict (maybe Fix is Alice's fix, and Fox is Bob's), and they are both pushed to the same channel, we need to solve the conflict. We do that by creating a change, called "Resol".
Now, if you push Fix to another channel (that doesn't have Fox), that doesn't necessarily pull in Fox and Resol. If you push Fix and Fox, you'll get the exact same conflict. But instead of solving it again, you can simply push Resol, and the conflict will be solved.
> Can a link between two changes be created manually, even though the delta does not require it? E.g. to attach an empty commit, if these are even possible in Pijul (compare git's "--allow-empty"). Or, more reasonably, to record logical dependencies which do not show up in the code, such a separate changes for testing vs. the code itself.
Absolutely, the syntax for that is, when presented with a change draft when running `pijul record`, add a line of the following form:
[] BQDE4VH6OZHULHAOP37GSBJMCI5QIFSOU6COBYKPAY6FPH3IMISAC
To the dependencies section (that is, empty square brackets, a space, and the hash of the change you want to add to the dependencies).
We can even imagine adding dependencies automatically with external tools via record-time hooks, taking the specific programming language into account.
- zeotroph 6y ago(right, I switched between "Foo" and "Fix" in the comment, sorry) > instead of solving it again, you can simply push Resol, and the conflict will be solved. Oh noes, so no obscure "pijul rerere" to learn!? I mean, very nice! > pijul record I see, that's what that field is for - I tried it briefly when pijul had the interim name and wondered why it was listed and editable in the record editor.