Entry tags:
Mercurial
I have been trying to actually use Mercurial for my dev work these past few days, and I still don't quite get it.
I have read http://wiki.dwscoalition.org/notes/Dev_Version_Control , so I can now make a new changeset, then do my changes and sync with the live code, but a few things still escape me.
Do I need to use
How do I unapply all the patches and then sync with the DW repository without Mercurial applying all my patches again?
Do I need to use
Or, if anyone just wants to sketch out how they work with Mercurial in their dev environment, that would be great.
I have read http://wiki.dwscoalition.org/notes/Dev_Version_Control , so I can now make a new changeset, then do my changes and sync with the live code, but a few things still escape me.
Do I need to use
hg qcommit at some point?How do I unapply all the patches and then sync with the DW repository without Mercurial applying all my patches again?
Do I need to use
hg qfinish?Or, if anyone just wants to sketch out how they work with Mercurial in their dev environment, that would be great.

no subject
For me:
$ hg qnew Bug####
( I do set a guard on the patch, I can explain guards later if you want! )
COED!
$ hg add <any files added>
$ hg rm <any files deleted>
$ hg qrefresh
go back to "COED!" till everything works
$ hg export qtip > ~/the.patch
( then I upload the.patch to zilla! )
To update:
( after making sure I've done a qrefresh )
$ hg qpop -a
$ cv -u
( cv is my cvsreport alias )
$ hg qpush -a
( this will push everything, you can do 'hg qpush Bug####' if you just want that )
Once it's committed:
( insert first 2 steps of updating here )
$ hg qrm Bug####
no subject
Hmm, I think I am mainly confused with how to finish stuff right now. I thought I'd just create different patches for different bugs with qnew, but as it turns out, I can't really work with them separately. So now I have three different patches, two of which I have uploaded to Bugzilla and one I still want to work with and I can't figure out how to only work with that one now, because all three patches are applied if I try that. Do I need to remove the other patches?
no subject
# pop all the patches
hg qpop -a
# set up a guard of a keyword on the patch, so that they only apply
# when you select that keyword
hg qguard patch-one +keyword1
hg qguard patch-two +keyword2
# push all unguarded patches -- that means patch-three
hg qpush
To be able t opush patch-one back onto the queue, you can try: hg qselect keyword1 (look up qguard and qselect for more info but that should be enough to get you started!)
no subject
hg qpopandhg qdel -kthen resync of course with dws and dwdb. Or do a simple hg qdel but you'll lose the patch file. I save all my patches on my computer or a dedicated folder on my DH and can easily re-import them with qimport, though.no subject
*lightbulb moment of understanding* :)
Thanks!