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
! 3: The wifi renewal project is trying to sync our sys/net80211 with FreeBSD as far as possible, to allow easier sharing of drivers.
! 5: ## Why hg?
! 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.
! 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).
! 12: ## Helping with testing
! 14: ** Note that this project is not ready for general testing yet! **
! 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:
! 18: > hg clone https://anonhg.netbsd.org/src-draft
! 20: Now enable the 'topic' extension by adding
! 22: [extensions]
! 23: topic=
! 25: to the .hg/hgrc file in your clone dir and then update to the 'wifi' topic:
! 27: > hg up wifi
! 29: ## Helping with developement
! 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.
! 33: The developement happens using the topic and evolve extensions, which unfortunately slows down some hg operations.
! 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:
! 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=
! 51: The .hgignore file referened there tells hg to leave editor backups and compiled kernels alone. Mine looks like:
! 53: syntax: glob
! 54: *~
! 55: *.o
! 56: sys/arch/amd64/compile/*
! 58: Finaly the clone local config (.hg/hgrc) looks like this:
! 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
! 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