// Copyright 2020 Google LLC // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // https://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. syntax = "proto3"; message GitRef { string name = 1; // Always a commit id. Refs pointing to a non-commit object are not // included. bytes commit_id = 2; } message View { repeated bytes head_ids = 1; repeated bytes public_head_ids = 4; bytes checkout = 2; // Only a subset of the refs. For example, does not include refs/notes/. repeated GitRef git_refs = 3; } message Operation { bytes view_id = 1; repeated bytes parents = 2; OperationMetadata metadata = 3; } // TODO: Share with store.proto? Do we even need the timezone here? message Timestamp { uint64 millis_since_epoch = 1; int32 tz_offset = 2; } message OperationMetadata { Timestamp start_time = 1; Timestamp end_time = 2; string description = 3; string hostname = 4; string username = 5; }