dcb0fb74c5
- Add advertise_refs functionality for Git protocol communication - Implement archive service with TAR/ZIP format support and streaming - Create blame service for Git file annotation with line tracking - Add branch management including create, delete, rename and compare operations - Implement merge checking with conflict detection and fast-forward handling - Add cherry-pick functionality for applying commits between branches - Integrate gix library for Git repository operations and object handling - Add comprehensive test suite covering all Git operations - Implement proper error handling and repository validation - Add pagination support for large result sets - Create protobuf definitions for all Git operations and data structures - Add build system for gRPC code generation and dependency management
52 lines
1.1 KiB
Protocol Buffer
52 lines
1.1 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package gitks;
|
|
|
|
import "google/protobuf/timestamp.proto";
|
|
|
|
// Git identity attached to commits and tags.
|
|
message Identity {
|
|
string name = 1;
|
|
string email = 2;
|
|
}
|
|
|
|
// Git signature with timestamp and timezone offset.
|
|
message Signature {
|
|
Identity identity = 1;
|
|
google.protobuf.Timestamp when = 2;
|
|
// Offset in minutes east of UTC, as stored by git.
|
|
int32 timezone_offset = 3;
|
|
}
|
|
|
|
// Backward-compatible payload name used by earlier Rust structs.
|
|
message PayloadTagger {
|
|
string email = 1;
|
|
string name = 2;
|
|
}
|
|
|
|
message VerifiedSignature {
|
|
enum Reason {
|
|
REASON_UNSPECIFIED = 0;
|
|
REASON_VALID = 1;
|
|
REASON_EXPIRED_KEY = 2;
|
|
REASON_NOT_SIGNING_KEY = 3;
|
|
REASON_GPGVERIFY_ERROR = 4;
|
|
REASON_GPGVERIFY_UNAVAILABLE = 5;
|
|
REASON_UNSIGNED = 6;
|
|
REASON_UNKNOWN_SIGNATURE_TYPE = 7;
|
|
REASON_NO_USER = 8;
|
|
REASON_UNVERIFIED_EMAIL = 9;
|
|
REASON_BAD_EMAIL = 10;
|
|
REASON_UNKNOWN_KEY = 11;
|
|
REASON_MALFORMED_SIGNATURE = 12;
|
|
REASON_INVALID = 13;
|
|
}
|
|
|
|
bool verified = 1;
|
|
Reason reason = 2;
|
|
string signature = 3;
|
|
string payload = 4;
|
|
string key_fingerprint = 5;
|
|
string signer = 6;
|
|
}
|