Gentoo Archives: gentoo-dev

From: Brian Dolbec <dolsen@g.o>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] rfc: "emerge --sync" vs "emaint sync"
Date: Wed, 06 May 2020 23:49:57
Message-Id: 20200506164950.237a0f43@storm
In Reply to: [gentoo-dev] rfc: "emerge --sync" vs "emaint sync" by William Hubbs
1 On Wed, 6 May 2020 17:02:42 -0500
2 William Hubbs <williamh@g.o> wrote:
3
4 > All,
5 >
6 > I know that most of our documentation tells people to use "emerge
7 > --sync"; however, today I heard about "emaint sync" for the first
8 > time. ;-)
9 >
10 > Which one should we use? Will there be a phase-out for "emerge
11 > --sync" or "emaint sync"? Are the plans to keep both available?
12 >
13 > Thanks,
14 >
15 > William
16 >
17
18 Hi William. emaint --sync is not going to replace emerge --sync.
19 They both use the same plugin sync modules.
20
21 The difference between them is that emerge --sync is generally done to
22 sync all repositories defined which have [auto-sync] = yes. Zac
23 extended it to do individual repositories as well if you specify the
24 repo name.
25
26 ie: emerge --sync foo
27
28 emaint --sync offers fine grained syncing of individual repositories
29 via several options. With emaint you can set a repo's [auto-sync] = no
30 and still manually sync it on demand from emaint. It offers some
31 additional capabilities that some power users/devs may need/enjoy
32 depending on their work flow.
33
34 Here are the emaint sync options:
35
36 -r REPO, --repo REPO (sync module only): -r, --repo Sync the specified repo
37 -A, --allrepos (sync module only): -A, --allrepos Sync all repos that
38 have a sync-url defined
39 -a, --auto (sync module only): -a, --auto Sync auto-sync enabled
40 repos only
41 --sync-submodule {glsa,news,profiles}
42 (sync module only): Restrict sync to the specified
43 submodule(s)
44
45 ie: emaint sync -r foo -r bar
46
47
48 The --sync-submodule option was added for developers working from the
49 git tree with the other git tree submodules added the the base gentoo
50 git ebuild tree. In our case the profiles did end up as part of the
51 main ebuild tree. But you can add the glsa and news git repos to the
52 git ebuild tree in order to make a complete repository.
53
54 NOTE: the above pertains to the developer git tree, not the anonymous
55 git tree. That git repo has had the glsa and news repos added to it
56 for general consumption.