I'm going to use mercurial (hg) and patch queues here, but other options exist.
- Get the mozilla-central (m-c) repository setup locally
- Start hacking on something locally
- Add a new patch queue locally with
hg qnew bug-number
- Hack hack hack
Eventually run the tests if you need to, for instance with the following command
./mach xpcshell-test toolkit/modules/tests/xpcshell/test_jsesc.js
Update your current patch queue with hg qrefresh
Once this is done and that your patch is ready, upload it to the bug with:
hg bzexport {{commit_rev}} {{bug_number}}
You can get the commit_rev
using hg log -l 2
.
If you want to push your changes to the Mozilla CI (named Try), use hg push-to-try
, like this (to run only the xpcshell tests):
hg push-to-try -m "try: -b do -p linux,linux64,macosx64,win32,win64 -u xpcshell -t none"
To update the local repository, you need to first ensure that no patch queues are enabled. You can do so with:
hg qpop -a
Once this is done, you can update with:
hg pull -u