Annotation of wikisrc/Wifi_renewal_on_hg.mdwn, revision 1.1

1.1     ! wiki        1: #How to help with the Wifi renewal "branch" in hg
        !             2: 
        !             3: The wifi renewal project is trying to sync our sys/net80211 with FreeBSD as far as possible, to allow easier sharing of drivers.
        !             4: 
        !             5: ## Why hg?
        !             6: 
        !             7: The project started with a traditional cvs branch, but as we will be moving to mercurial anyway (and this "branch" could live for quite some time, even accross the general repo switch), it is a good test case for the hg environment and also nice practice for the developers involved.
        !             8: 
        !             9: The developement uses a "topic", which is a kind of lightweight branch that goes away after the project finished. The hg documentation includes
        !            10: an [introduction to topics](https://www.mercurial-scm.org/doc/evolution/tutorials/topic-tutorial.html).
        !            11: 
        !            12: ## Helping with testing
        !            13: 
        !            14: ** Note that this project is not ready for general testing yet! **
        !            15: 
        !            16: If you just want to check out the wifi project source and build your own test kernel for it, you simply start by cloning the repository from anonhg:
        !            17: 
        !            18:     > hg clone https://anonhg.netbsd.org/src-draft
        !            19: 
        !            20: Now enable the 'topic' extension by adding
        !            21: 
        !            22:     [extensions]
        !            23:     topic=
        !            24: 
        !            25: to the .hg/hgrc file in your clone dir and then update to the 'wifi' topic:
        !            26: 
        !            27:     > hg up wifi
        !            28: 
        !            29: ## Helping with developement
        !            30: 
        !            31: As a developer, you should start with an annonhg clone as well, as that uses 'clonebundles' and the CDN to get your clone faster.
        !            32: 
        !            33: The developement happens using the topic and evolve extensions, which unfortunately slows down some hg operations.
        !            34: 
        !            35: After initial cloning (see above) you will have to edit your global ~/.hgrc and the clone local .hg/hgrc files. Here is my ~/.hgrc:
        !            36: 
        !            37:     [ui]
        !            38:     user=Martin Husemann <martin@NetBSD.org>
        !            39:     color = no
        !            40:     ignore = ~/.hgignore
        !            41:     [paths]
        !            42:     default:pushrev = .
        !            43:     [extensions]
        !            44:     evolve=
        !            45:     topic=
        !            46:     share=
        !            47:     purge=
        !            48:     pager=
        !            49:     rebase=
        !            50: 
        !            51: The .hgignore file referened there tells hg to leave editor backups and compiled kernels alone. Mine looks like:
        !            52: 
        !            53:     syntax: glob
        !            54:     *~
        !            55:     *.o
        !            56:     sys/arch/amd64/compile/*
        !            57: 
        !            58: Finaly the clone local config (.hg/hgrc) looks like this:
        !            59: 
        !            60:     [paths]
        !            61:     default = ssh://hgmaster.netbsd.org//repo/src-draft
        !            62:     final = ssh://hgmaster.netbsd.org//repo/src-public
        !            63:     [phases]
        !            64:     publish=false
        !            65: 
        !            66: This directs normal pushes to the src-draft repository and prevents publishing (that is what "merging the branch to HEAD" would have been in cvs). When it is time to do that, a "final" push will be done that moves the changes to the src-pulbic repository (and empties the topic, which will make it vanish on next update).

CVSweb for NetBSD wikisrc <wikimaster@NetBSD.org> software: FreeBSD-CVSweb