summaryrefslogtreecommitdiff
path: root/repo.proto
diff options
context:
space:
mode:
Diffstat (limited to 'repo.proto')
-rw-r--r--repo.proto36
1 files changed, 36 insertions, 0 deletions
diff --git a/repo.proto b/repo.proto
new file mode 100644
index 0000000..57ba63c
--- /dev/null
+++ b/repo.proto
@@ -0,0 +1,36 @@
+syntax = "proto3";
+
+package gitpb;
+
+// stores information about git repos
+// If the project is in golang, also gets the go language dependacies
+
+import "refs.proto";
+import "godep.proto";
+import "gitTags.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'
+ repeated Ref refs = 2;
+ google.protobuf.Timestamp lastPull = 3; // last time a git pull was done
+
+ // things specific to golang projects
+ string goPath = 4; // the logical path as used by golang: 'go.wit.com/apps/helloworld'
+ repeated GoDep GoDeps = 6;
+ google.protobuf.Timestamp lastGoDep = 7; // last time go.sum was processed
+ bool goLibrary = 8; // if this is a golang library
+ bool goPrimitive = 9; // if this is a golang primitive
+
+ repeated GitTag gitTags = 10;
+
+ string masterBranchName = 11; // git 'main' or 'master' branch name
+ string develBranchName = 12; // whatever the git 'devel' branch name is
+ string userBranchName = 13; // whatever your username branch is
+}
+
+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;
+}