summaryrefslogtreecommitdiff
path: root/README.HG
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@infradead.org>2006-03-08 11:25:29 -0300
committerMauro Carvalho Chehab <mchehab@infradead.org>2006-03-08 11:25:29 -0300
commit26b121414fdd513cdbc948bf555a55490adb5edf (patch)
tree4d5b8f1f4554448d3097969ecf09cf1f63a00b69 /README.HG
parent35a54ae2e849cf4044175555a43dc4d6d9a3431f (diff)
downloadmediapointer-dvb-s2-26b121414fdd513cdbc948bf555a55490adb5edf.tar.gz
mediapointer-dvb-s2-26b121414fdd513cdbc948bf555a55490adb5edf.tar.bz2
Several updates at developer documentation
From: Mauro Carvalho Chehab <mchehab@infradead.org> Due to multiple trees, readme file becamed outdated. Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'README.HG')
-rw-r--r--README.HG75
1 files changed, 45 insertions, 30 deletions
diff --git a/README.HG b/README.HG
index 77576602e..e661d493a 100644
--- a/README.HG
+++ b/README.HG
@@ -1,52 +1,53 @@
-Mauro Carvalho Chehab 2006 Jan 30
+Mauro Carvalho Chehab 2006 Mar 8
-This file describes the general procedures used by v4l-dvb maintainers.
-Some of these also applies to patch submitters.
+This file describes the general procedures used by v4l-dvb developers
+who are responsible for maintaining V4L/DVB drivers. Some of these
+also applies to patch submitters.
-We've moved from cvs to a modern SCM system that fits better into
+Current V4L/DVB tree uses a modern SCM system that fits better into
kernel development model, called Mercurial (aka hg).
-At http://selenic.com/mercurial you'll find quick-start info, a
-tutorial and FAQs.
+There are some tutorials, FAQs and other valuable informations at
+http://selenic.com/mercurial
Mercurial is a distributed SCM, which means every developer gets his
own full copy of the repository (including the complete revision
history), and can work and commit locally without network connection.
The resulting changesets can then be exchanged between repositories and
-finally published to the master repository in linuxtv.org.
+finally published to the master repository in linuxtv.org. A list of
+current available repositories is available at: http://linuxtv.org/hg
+
+The master repository with stable patches is available at:
+http://linuxtv/org/hg/v4l-dvb
Mercurial is organized with a master tag, called tip. This tag contains
the master repository that will be used by normal users and to generate
patches to kernel.
-The v4l-dvb mercurial repository is meant for development. It means
-that it might be broken from time to time, although all efforts should
-be done to avoid this. There are more "stable" snapshots at
-http://www.linuxtv.org/downloads/snapshot page.
-
-This file postulates some simple rules for maintaing hg tree, as stated
+This file postulates some simple rules for maintaing hg trees, as stated
below:
1) It is strongly recommended that each developer be active at IRC
channels (irc://irc.freenode.net) #v4l (for analog) and/or #linuxtv
(for digital). It helps to have more discussions at major changes;
-2) Minor changes, like simple card additions (for example a new card
- row at a card struct) can be applied directly by each developer;
+2) Each developer may have one or more development trees, for his daily
+ work. It is recommended to have a tree called 'v4l-dvb' for each
+ developer with their stable patches.
-3) Medium changes that needs modification on card coding or creating a
- new card type should be discussed first at the Mailing Lists
- video4linux-list@redhat.com (analog/common parts) and/or
- linux-dvb@linuxtv.org to allow other contributors to discuss about
- the way it will be included.
+3) After the patches are ready, developer should send an email to
+ v4l-dvb-maintainer list asking the maintainer to pull it from developer
+ repository, pushing it at master. The maintainer will analyse the patch
+ and publish at master hg if everything looks ok.
-4) Major changes that implies changing some core structs should be
- widely discussed on IRC, posted to the list, created a snapshot THEN
- committed to the tip branch. It is strongly recommended to use a branch
- or v4l_experimental area for such changes.
+4) Medium or major changes that needs modification on card coding, creating a
+ new card type or requiring changes at core structs should be discussed first
+ at the Mailing Lists video4linux-list@redhat.com (analog/common parts)
+ and/or linux-dvb@linuxtv.org and at IRC to allow other contributors to
+ discuss about the way it will be included.
-5) Every CVS maintainer should follow the "rules of thumb" of kernel
- development stated at Linux source code, especially:
+5) Every developer should follow the "rules of thumb" of kernel development
+ stated at Linux source code, especially:
Documentation/SubmittingPatches
Documentation/SubmittingDrivers
@@ -66,7 +67,7 @@ below:
hg add <files>
hg remove <files>
hg rename <source> <dest>
- hg addremove
+ hg addremove [<files>]
*Warning* hg addremove will add/removes all files, including object
files. Be careful! You can remove wrongly added files with hg remove.
@@ -79,14 +80,19 @@ below:
This command will preserve the changes at the files. So, a new
hg commit will redo the desired commit.
-9) To push the change to the *MASTER* repository you need to run:
+9) To push the change to the repository you need to run:
- make push
+ hg push <url>
10) To update from the master repository, it is needed to do:
make pull
+ After pulling from master, if there are some changes at local repository,
+ hg will require to merge it. This is done by
+ hg update -m
+ make commit
+
11) For hg to work properly, these vars should be defined (replacing
the names at the left):
@@ -185,7 +191,16 @@ below:
since the macro preprocessing script used to prepare kernel upstream
patches (v4l/scripts/gentree.pl) is not able to handle it.
-Cheers,
+18) To import contributed stuff, a script is provided at tree and allows easy
+ import of a mbox-based patch emails. This is done with:
+ ./mailimport <mbox file>
+ For it to work properly, git tools need to be installed at local machine,
+ since git have a gitimport script that is used by mailimport.
+ Also, hg have a feature, called mqueue, that allows having several patches
+ that can be applied/unapplied for testing. mailimport trusts on it to work,
+ so, this extension should be enabled for mailimport script to work.
+
+Good Work!
Mauro
Mauro Carvalho Chehab <mchehab .at. linuxtv .dot. org>