Gentoo Archives: gentoo-dev

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