syntax = "proto3"; package gitpb; // stores information about git repos // If the project is in golang, also gets the go language dependacies import "goDep.proto"; import "gitTag.proto"; import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp message Repo { string fullPath = 1; // the actual path to the .git directory: '/home/devel/golang.org/x/tools' google.protobuf.Timestamp lastPull = 2; // last time a git pull was done string masterBranchName = 3; // git 'main' or 'master' branch name string develBranchName = 4; // whatever the git 'devel' branch name is string userBranchName = 5; // whatever your username branch is // things specific to golang projects string goPath = 6; // the logical path as used by golang: 'go.wit.com/apps/helloworld' bool goLibrary = 7; // if this is a golang library bool goPrimitive = 8; // if this is a golang primitive GitTags tags = 9; GoDeps goDeps = 10; google.protobuf.Timestamp lastGoDep = 11; // last time go.sum was processed } message Repos { string uuid = 1; // I guess why not just have this on each file string version = 2; // maybe can be used for protobuf schema change violations repeated Repo repos = 3; }