protocolbuffers/protobuf

Protocol Buffers - Google's data interchange format

C++★ 71,961+18 that day#10 on trending

Analyzed September 3, 2026 at 065d6fa (main) with jscpd 5.4.0 in 12.2s.

17.9%duplicated code · 126,185 of 704,848 lines
4,868clones in code
1,734code files of 2,779 scanned
37.81%duplicated over all files · 19,753 clones

The code number leaves out tests, fixtures, docs, examples, data files, styles, translations and vendored code, and 238 generated files: ci/push_auto_update.sh, compatibility/smoke/v21.12/legacy_gencode_test/proto3/Proto3GencodeTestProto.java, compatibility/smoke/v25.8/legacy_gencode_test/proto3/Proto3GencodeTestProto.java, compatibility/smoke/v26.0/legacy_gencode_test/proto3/Proto3GencodeTestProto.java, compatibility/smoke/v3.0.0/legacy_gencode_test/proto3/Proto3GencodeTestProto.java, compatibility/smoke/v3.11.0/legacy_gencode_test/proto3/Proto3GencodeTestProto.java, compatibility/smoke/v3.19.0/legacy_gencode_test/proto3/Proto3GencodeTestProto.java, compatibility/smoke/v3.20.0/legacy_gencode_test/proto3/Proto3GencodeTestProto.java, compatibility/smoke/v3.8.0/legacy_gencode_test/proto3/Proto3GencodeTestProto.java, compatibility/smoke/v32.1/legacy_gencode_test/proto3/Proto3GencodeTestProto.java, csharp/src/AddressBook/Addressbook.pb.cs, csharp/src/Google.Protobuf.Conformance/Conformance.pb.cs, csharp/src/Google.Protobuf.Test.TestProtos/JsonEnumvalCustomString.pb.cs, csharp/src/Google.Protobuf.Test.TestProtos/MapUnittestProto3.pb.cs, csharp/src/Google.Protobuf.Test.TestProtos/Nrt.pb.cs, csharp/src/Google.Protobuf.Test.TestProtos/OldExtensions1.cs, csharp/src/Google.Protobuf.Test.TestProtos/OldExtensions2.cs, csharp/src/Google.Protobuf.Test.TestProtos/TestMessagesEdition2023.pb.cs, csharp/src/Google.Protobuf.Test.TestProtos/TestMessagesEditionUnstable.pb.cs, csharp/src/Google.Protobuf.Test.TestProtos/TestMessagesProto2.pb.cs and 218 more.

Largest clones in the code

7 more
Largest clones over all files, tests and data included
By format, code only
FormatFilesLinesClonesDuplicated linesDuplication
cpp479271,4651,84022,7728.39%
objectivec4047,00591212,67426.96%
c-header536143,38878336,24725.28%
java15265,5367479,22014.07%
c12086,91222936,42641.91%
csharp17241,7252166,88716.51%
python5219,339477273.76%
php357,087425247.39%
rust6111,359273633.2%
ruby264,4148801.81%
By format, all files
FormatFilesLinesClonesDuplicated linesDuplication
java278341,4026,070222,66365.22%
csharp217158,5604,06889,40356.38%
cpp521309,4992,76331,44210.16%
c-header578188,0832,57066,12335.16%
objectivec5669,8082,30527,55239.47%
php15133,26988910,44531.4%
protobuf28650,42043819,62538.92%
c12588,97225038,35143.1%
python9945,094951,2442.76%
yaml273,1227174923.99%

Trending appearances

DayRankStarsFilesLinesClonesAll filesCodeHealthCommit
Sep 3, 2026#1071,961 (+18)2,7791,352,22719,75337.81%17.9%—065d6fa

Want this for your own project? Install jscpd and run jscpd ., or measure it the way the baselines were measured.