gitdataai/lib/git/proto/branch.proto
2026-05-30 01:38:40 +08:00

128 lines
2.7 KiB
Protocol Buffer

syntax = "proto3";
package git.v1;
import "common.proto";
// Mirrors: cmd/branch/branch_list.rs — BranchListItem
message BranchListItem {
string name = 1;
ObjectId oid = 2;
bool is_head = 3;
bool is_remote = 4;
bool is_current = 5;
optional string upstream = 6;
}
// Mirrors: cmd/branch/branch_summary.rs — BranchSummary
message BranchSummary {
uint64 local_count = 1;
uint64 remote_count = 2;
uint64 all_count = 3;
}
// Mirrors: cmd/branch/branch_fork.rs — BranchForkParams
message BranchForkParams {
string name = 1;
ObjectId oid = 2;
bool force = 3;
}
// Mirrors: cmd/branch/branch_delete.rs — BranchDeleteParams
message BranchDeleteParams {
string name = 1;
bool force = 2;
}
// Mirrors: cmd/branch/branch_rename.rs — BranchReNameParams
message BranchReNameParams {
string old_branch = 1;
string new_branch = 2;
bool force = 3;
}
message BranchListRequest {
string repo_id = 1;
}
message BranchListResponse {
repeated BranchListItem branches = 1;
}
message BranchInfoRequest {
string repo_id = 1;
string branch = 2;
}
message BranchInfoResponse {
BranchListItem branch = 1;
}
message BranchSummaryRequest {
string repo_id = 1;
}
message BranchSummaryResponse {
BranchSummary summary = 1;
}
message BranchHeadRequest {
string repo_id = 1;
}
message BranchHeadResponse {
string head_name = 1;
}
message BranchAheadBehindRequest {
string repo_id = 1;
string local_branch = 2;
string remote_branch = 3;
}
message BranchAheadBehindResponse {
uint64 ahead = 1;
uint64 behind = 2;
}
message BranchUpstreamRequest {
string repo_id = 1;
string branch = 2;
}
message BranchUpstreamResponse {
string upstream_name = 1;
}
message BranchForkRequest {
string repo_id = 1;
BranchForkParams params = 2;
}
message BranchForkResponse {}
message BranchDeleteRequest {
string repo_id = 1;
BranchDeleteParams params = 2;
}
message BranchDeleteResponse {}
message BranchRenameRequest {
string repo_id = 1;
BranchReNameParams params = 2;
}
message BranchRenameResponse {}
service BranchService {
rpc BranchList(BranchListRequest) returns (BranchListResponse);
rpc BranchInfo(BranchInfoRequest) returns (BranchInfoResponse);
rpc BranchSummary(BranchSummaryRequest) returns (BranchSummaryResponse);
rpc BranchHead(BranchHeadRequest) returns (BranchHeadResponse);
rpc BranchAheadBehind(BranchAheadBehindRequest) returns (BranchAheadBehindResponse);
rpc BranchUpstream(BranchUpstreamRequest) returns (BranchUpstreamResponse);
rpc BranchFork(BranchForkRequest) returns (BranchForkResponse);
rpc BranchDelete(BranchDeleteRequest) returns (BranchDeleteResponse);
rpc BranchRename(BranchRenameRequest) returns (BranchRenameResponse);
}