Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev-announce@l.g.o
Cc: gentoo-dev@l.g.o
Subject: [gentoo-dev] Git mirror news: travis-ci running repoman, git->cvs merge & revert tools
Date: Sun, 08 Feb 2015 10:39:05
Message-Id: 20150208113845.377dfbfc@pomiot.lan
1 Hello, everyone.
2
3 I would like to announce that our little rsync->git band-aid mirror [1]
4 is doing fine and we're actively working towards improving Gentoo
5 development experience.
6
7
8 First of all, we have enabled tree-wide repoman scans using travis-ci
9 [2]. Besides providing regularly updated repository state report, it
10 can be used to scan Pull Requests for tree-wide damage :). Asides from
11 the benefit to external contributors, Gentoo developers can use it to
12 avoid having to run repoman locally.
13
14 For example, if you are doing a big old version cleanup, do it in git
15 and submit a Pull Request, and travis will figure out if you don't
16 break any revdeps.
17
18
19 Secondly, I have committed app-portage/lightweight-cvs-toolkit for your
20 committing pleasure. It consists of three tools:
21
22 a. lcvs-init -- that can be used to quickly create partial CVS
23 checkout, having only pure categories checked out. The repository is
24 set to use 'gentoo' as master, so you can easily commit into CVS
25 while keeping the dependencies, eclasses and profiles synced to your
26 regular rsync/git checkout (with working cache!). The idea is explained
27 more thoroughly on the wiki [3] and in the script output.
28
29 b. lcvs-merge-pr -- a convenient tool to merge github PR (or any git
30 patch) into your CVS checkout. It 'cvs up -dP' directories
31 as necessary, git-applies the patch omitting ChangeLogs and Manifests,
32 calls cvs add/cvs rm as appropriate. All you have to do is update
33 the ChangeLog and commit :). More about merging on the wiki [4].
34
35 c. lcvs-revert -- a convenient tool to revert commits. Pretty much
36 the idea is: someone breaks something e.g. by removing ebuilds, and you
37 want to revert that. Instead of playing all the fancy 'cvs add' magic,
38 you just find the matching git commit and lcvs-revert it. Using logic
39 similar to lcvs-merge-pr, it fetches the diff and reverse-applies it.
40 Then you check if everything went fine, ChangeLog and commit :). More
41 info on the wiki [5] as well.
42
43
44 Thanks to all the people that helped me get this running, and have
45 fun :).
46
47 [1]:https://github.com/gentoo/gentoo-portage-rsync-mirror
48 [2]:https://travis-ci.org/gentoo/gentoo-portage-rsync-mirror
49 [3]:https://wiki.gentoo.org/wiki/Lightweight_CVS_Checkout
50 [4]:https://wiki.gentoo.org/wiki/Project:Git_mirror/Merging_Pull_Requests
51 [5]:https://wiki.gentoo.org/wiki/Project:Git_mirror/Reverting_Gentoo_commits
52
53 --
54 Best regards,
55 Michał Górny

Replies