MCPcopy
hub / github.com/redspread/spread / Remote

Method Remote

cli/remote.go:8–97  ·  view source on GitHub ↗

Remote manages the Git repositories remotes.

()

Source from the content-addressed store, hash-verified

6
7// Remote manages the Git repositories remotes.
8func (s SpreadCli) Remote() *cli.Command {
9 return &cli.Command{
10 Name: "remote",
11 Usage: "View/modify versioning remotes",
12 Description: "Manages repository remotes.",
13 Action: func(c *cli.Context) {
14 p := s.projectOrDie()
15 remotes, err := p.Remotes().List()
16 if err != nil {
17 s.fatalf("couldn't retrieve remotes")
18 }
19
20 s.printf("Remotes:")
21 for _, r := range remotes {
22 s.printf("- %s", r)
23 }
24
25 println()
26 cli.ShowSubcommandHelp(c)
27 },
28 HideHelp: true,
29 Subcommands: []cli.Command{
30 {
31 Name: "add",
32 Usage: "add new remote",
33 ArgsUsage: "<name> <url>",
34 Action: func(c *cli.Context) {
35 name := c.Args().First()
36 if len(name) == 0 {
37 s.fatalf("a name must be specified")
38 }
39
40 url := c.Args().Get(1)
41 if len(url) == 0 {
42 s.fatalf("a url must be specified")
43 }
44
45 p := s.projectOrDie()
46 _, err := p.Remotes().Create(name, url)
47 if err != nil {
48 s.fatalf("Could not create new remote: %v", err)
49 }
50
51 s.printf("Created remote '%s'", name)
52 },
53 },
54 {
55 Name: "remove",
56 Usage: "delete remote",
57 ArgsUsage: "<name>",
58 Action: func(c *cli.Context) {
59 name := c.Args().First()
60 if len(name) == 0 {
61 s.fatalf("a name must be specified")
62 }
63
64 p := s.projectOrDie()
65 if err := p.Remotes().Delete(name); err != nil {

Callers

nothing calls this directly

Calls 5

projectOrDieMethod · 0.95
fatalfMethod · 0.95
printfMethod · 0.95
RemotesMethod · 0.80
GetMethod · 0.45

Tested by

no test coverage detected