syntax = "proto3"; package gitks; import "oid.proto"; import "repository.proto"; message FindRemoteRepositoryRequest { string remote_url = 1; } message RemoteHead { string ref_name = 1; string target_oid = 2; bool symbolic = 3; string symbolic_target = 4; } message FindRemoteRepositoryResponse { repeated RemoteHead refs = 1; bool exists = 2; } message FindRemoteRootRefRequest { string remote_url = 1; } message FindRemoteRootRefResponse { string ref_name = 1; string target_oid = 2; } message UpdateRemoteMirrorRequest { RepositoryHeader repository = 1; string remote_url = 2; string remote_name = 3; // defaults to "origin" bool force = 4; bool prune = 5; repeated string refspecs = 6; // if empty, fetch all refs } message UpdateRemoteMirrorResponse { bool ok = 1; string error = 2; } service RemoteService { rpc FindRemoteRepository(FindRemoteRepositoryRequest) returns (FindRemoteRepositoryResponse); rpc FindRemoteRootRef(FindRemoteRootRefRequest) returns (FindRemoteRootRefResponse); rpc UpdateRemoteMirror(UpdateRemoteMirrorRequest) returns (UpdateRemoteMirrorResponse); }