Sigh. I hate this question: "How will BitKeeper make it easier to
port something between 2.4 and 2.5?" Answer: "Bk won't help - at
least not as much as it would help if 2.5 had been cloned from 2.4."
As far as bk is concerned, 2.4 and 2.5 are two completely unrelated
repositories, so you can't push or pull changes between them. You can
still use bk to export and import patches, and to help you understand
what a change was attempting to do, so it's not completely useless.
If I were you, I would:
1. Grab the linux-2.4, linux-2.5, and linuxconsole trees.
2. Use "bk changes -L <location of vanilla 2.5 tree>" to get a list of
all the changes in the linuxconsole tree but not in the mainline.
3. Export those changes as a GNU patch, something like:
for i in `bk changes -L ../linux-2.5 -k | bk key2rev ChangeSet`; do
bk export -tpatch -r$i >> ../console_patches;
done
Note: This won't collapse overlapping patches. There is probably a
smarter way to do this.
4. Attempt to apply that patch to the linux-2.4 tree:
cd ../linux-2.4
bk import -tpatch ../console_patches
5. Clean up the resulting mess. I suggest bringing up revtool in the
linuxconsole tree and reading the comments and generally browsing
the related changesets for each file in order to figure out what
rejected bits of patches were supposed to do.
For documentation, try the following:
Jeff Garzik's BK Kernel Hacking HOWTO:
http://www.uwsg.indiana.edu/hypermail/linux/kernel/0202.2/1060.html
[Warning: Blatant personal plug] BitKeeper for Kernel Developers:
http://www.nmt.edu/~val/ols/bk.ps.gz
I also highly recommend the Bitkeeper test drive even for people who
have been using bk for a while:
http://www.bitkeeper.com/Test.html
After using bk for over a year, I still learned something new (and
very useful) when I took the test drive.
-VAL
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/