summaryrefslogtreecommitdiff
path: root/gitTag.proto
blob: e719b76da23d14cadc328fe5eaee9c160988964e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
syntax = "proto3";

package gitpb;

import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp

message GitRemote {                                       // `autogenpb:nomutex`
        string                      url             = 1;
        string                      fetch           = 2;
}

message GitBranch {                                       // `autogenpb:nomutex`
        string                      remote          = 1;  // the name of the remote repo
        string                      merge           = 2;  // the merge path from the config file
        string                      name            = 3;  // the branch name from the config file
}

message GitConfig {                                       // `autogenpb:nomutex`
        map<string, string>         core            = 1;  // map[origin] = "https:/git.wit.org/gui/gadgets"
        map<string, GitRemote>      remotes         = 2;  // map[origin] = "https:/git.wit.org/gui/gadgets"
        map<string, GitBranch>      branches        = 3;  // map[guimaster] = origin guimaster
        map<string, string>         submodules      = 4;
        map<string, string>         hashes          = 5;
        map<string, string>         versions        = 6;
        repeated GitBranch          local           = 7;  // move this this and away from the map<> variables
}

message GitTag {                                          // `autogenpb:nomutex`
        string                      refname         = 1;  // `autogenpb:unique` `autogenpb:sort` 	// tag name. treated as unique
        google.protobuf.Timestamp   creatordate     = 2;  // git creatordate
        google.protobuf.Timestamp   authordate      = 3;  // git author date
        string                      hash            = 4;  // `autogenpb:unique` // git hash
        string                      subject         = 5;  // git tag subject
}

message GitTags {                                         // `autogenpb:marshal` `autogenpb:nomutex` `autogenpb:gui`
        string                      uuid            = 1;  // `autogenpb:uuid:ffdff813-0316-4372-9e82-4c1c7d202526`
        string                      version         = 2;  // `autogenpb:version:v0.0.47`
        repeated GitTag             gitTags         = 3;
}