diff --git a/Svrnty.CQRS.Grpc.Generators/WriteProtoFileTask.cs b/Svrnty.CQRS.Grpc.Generators/WriteProtoFileTask.cs index 3650f86..894b1c6 100644 --- a/Svrnty.CQRS.Grpc.Generators/WriteProtoFileTask.cs +++ b/Svrnty.CQRS.Grpc.Generators/WriteProtoFileTask.cs @@ -67,6 +67,16 @@ public class WriteProtoFileTask : Task "GeneratedProtoFile.g.cs" ); + // Check if proto file already exists (committed to repo or from previous build) + var existingProtoPath = Path.Combine(ProjectDirectory, OutputDirectory, ProtoFileName); + if (File.Exists(existingProtoPath) && !File.Exists(generatedFilePath)) + { + Log.LogMessage(MessageImportance.High, + $"Svrnty.CQRS.Grpc: Using existing proto file at {existingProtoPath}. " + + "To regenerate, delete the file and build twice."); + return true; + } + if (!File.Exists(generatedFilePath)) { Log.LogWarning(