syntax = "proto3";

package git.v1;

import "common.proto";

// Fork a bare repository from an existing source repo.
message ForkRepoParams {
  string namespace = 1;
  string repo_name = 2;
  string default_branch = 3;
  optional string description = 4;
  bool enable_lfs = 5;
}

message ForkBareRequest {
  string storage_root = 1;
  string source_storage_path = 2;
  ForkRepoParams params = 3;
}

message ForkBareResponse {
  string storage_path = 1;
}

service ForkService {
  rpc ForkBare(ForkBareRequest) returns (ForkBareResponse);
}