Hello!
I just discovered quilt and I think it's a great tool. I've learned just
enough to be dangerous so I'd like some advice before proceeding.
One of my use cases is using it alongside a VCS (primarily svn or git)
to manage personal or local modifications which don't belong in the VCS.
This breaks quilt quickly when any modifications (git pull / svn update
/ hackity-hack) are made to quilt-tracked files but those modifications
shouldn't be added to the quilt patch (which is what will happen on
quilt refresh). One can advise quilt pop before any operations that
might possibly affect quilt files, but it's not always possible and if
you forget then it gets messy. The pdf doc even calls out that it may be
possible to resynchronize the index but it's probably worth starting
with a new scratch working directory.
Example: Create a quilt patch P. Create file F and 'quilt add' it, which
copies the current version to the index. Make modification M1 and quilt
refresh which creates a patchfile. Now some other modification M2
happens to F /while M1 is applied /and you don't want M2 to be included
in P. The trouble is that quilt starts by verifying that F + P = working
copy of F, which it won't.
I'm picturing 'quilt sync' which is essentially "pop && replace index &&
push", where the pop operation uses "patch -R" to reverse the given
patch from the /working /copy of F. That would leave F + M1 + M2 - M1 =
F + M2. Copy that version of the file into the index, then push M1, and
now M1 is in fact the only patch on top of the index. 'quilt refresh'
after a sync operation should do nothing.
My questions are:
* Should I be doing this at all? (Am I missing something obvious or
fundamental about how quilt works? Will this abuse or break the
database? Has this already been considered and rejected for good
reasons? Is there a better tool or better way to do what I'm trying
to do?)
* Any tips on how to go about implementing it?
I'm happy to submit a pull request but I want to make sure it's a good
idea and I approach it correctly.
Cheers,
Mike
_______________________________________________
Quilt-dev mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/quilt-dev