No Description

Jisi Liu af2fa056f7 Merge pull request #1859 from jskeet/remove-flag 9 years ago
benchmarks b661fb5000 Add the missing maintiner-clean entry for benchmarks 9 years ago
cmake 2078f614e4 Merge remote-tracking branch 'origin/3.0.0-beta-4' 9 years ago
conformance 4f19797baf Ruby: generated foo.proto -> foo_pb.rb instead of foo.rb. 9 years ago
csharp b5ce5251fd Move to dotnet cli for building, and .NET Core (netstandard1.0) as target platform (#1727) 9 years ago
docs f6be0d1fc1 Add https://github.com/os72/protobuf-dynamic 9 years ago
editors 5db217305f down-integrate internal changes 10 years ago
examples 9086d96439 Integrate from internal code base. 9 years ago
java 36adb40064 Update compatibility tests as well. 9 years ago
javanano 932f94e16e Update version number to 3.0.0-beta-4 9 years ago
jenkins 20fbb357d0 Add more tests to jenkins. 9 years ago
js 73e0b49272 fix debug.dump 9 years ago
m4 fe066bd514 Merge pull request #789 from motahan/solaris64_fix 9 years ago
more_tests 7db148f92a Add makefile for extended tests to be run before release. 16 years ago
objectivec 2e98ed5d17 Use public methods to fetch oneofs in generated code. 9 years ago
php 3808d091f8 Fix spelling in strings and comments 9 years ago
protoc-artifacts b553b87b26 Add a script to build protoc zip packages. 9 years ago
python 932f94e16e Update version number to 3.0.0-beta-4 9 years ago
ruby 6d92233e72 Added unit test for PascalCasing package names in Ruby. 9 years ago
src e67204752f Remove legacy_enum_values flag for GA. 9 years ago
util 985c968443 Remove hack for building Python support with Bazel. 9 years ago
.gitignore daec44fa52 Expand the OS X/Xcode gitignores 9 years ago
.travis.yml 9702b9f785 Keep cpp_distcheck on travis for now. 9 years ago
BUILD 02cd45ca35 Bazel build: Keep generated sources and Python runtime in the same directory. 9 years ago
CHANGES.txt 82b43d1f41 Remove Java deterministic API. 9 years ago
CONTRIBUTORS.txt 49bc8c0963 Add nano proto authors and update LICENSE file to include Android.mk. 11 years ago
LICENSE 2a50e67c78 Add support for POWER Linux 10 years ago
Makefile.am 97e20261ac Added new file to ruby_EXTRA_DIST. 9 years ago
Protobuf.podspec 932f94e16e Update version number to 3.0.0-beta-4 9 years ago
README.md e5ec85e7a5 Fix typos in README.md 9 years ago
WORKSPACE a9244ca0df add java/util support based on java/util/pom.xml 9 years ago
appveyor.bat 10a8fb4e73 Move to dotnet cli for building, and .NET Core (netstandard1.0) as target platform (#1727) 9 years ago
appveyor.yml 10a8fb4e73 Move to dotnet cli for building, and .NET Core (netstandard1.0) as target platform (#1727) 9 years ago
autogen.sh c0a7ea4d2f Add support for arguments. 10 years ago
configure.ac 932f94e16e Update version number to 3.0.0-beta-4 9 years ago
generate_descriptor_proto.sh 0de06f54bc Merge branch 'master' of github.com:google/protobuf 9 years ago
gmock.BUILD cc42db83d3 Fix headers for gmock.BUILD 10 years ago
post_process_dist.sh 9dcd24df10 Add js to post_process_dist.sh. 9 years ago
protobuf-lite.pc.in 37e7a3c4b8 Uncomment conflict fields from pkg-config files. 10 years ago
protobuf.bzl 02cd45ca35 Bazel build: Keep generated sources and Python runtime in the same directory. 9 years ago
protobuf.pc.in 37e7a3c4b8 Uncomment conflict fields from pkg-config files. 10 years ago
six.BUILD 29799238c2 Add srcs_version = "PY2AND3" in BUILD files 10 years ago
tests.sh 20fbb357d0 Add more tests to jenkins. 9 years ago
update_file_lists.sh ff7bdad231 Fix bugs on windows 10 years ago

README.md

Protocol Buffers - Google's data interchange format

Build Status Build status

Copyright 2008 Google Inc.

https://developers.google.com/protocol-buffers/

Overview

Protocol Buffers (a.k.a., protobuf) are Google's language-neutral, platform-neutral, extensible mechanism for serializing structured data. You can find protobuf's documentation on the Google Developers site.

This README file contains protobuf installation instructions. To install protobuf, you need to install the protocol compiler (used to compile .proto files) and the protobuf runtime for your chosen programming language.

Protocol Compiler Installation

The protocol compiler is written in C++. If you are using C++, please follow the C++ Installation Instructions to install protoc along with the C++ runtime.

For non-C++ users, the simplest way to install the protocol compiler is to download a pre-built binary from our release page:

https://github.com/google/protobuf/releases

In the downloads section of each release, you can find pre-built binaries in zip packages: protoc-$VERSION-$PLATFORM.zip. It contains the protoc binary as well as a set of standard .proto files distributed along with protobuf.

If you are looking for an old version that is not available in the release page, check out the maven repo here:

http://repo1.maven.org/maven2/com/google/protobuf/protoc/

These pre-built binaries are only provided for released versions. If you want to use the github master version at HEAD, or you need to modify protobuf code, or you are using C++, it's recommended to build your own protoc binary from source.

If you would like to build protoc binary from source, see the C++ Installation Instructions.

Protobuf Runtime Installation

Protobuf supports several different programming languages. For each programming language, you can find instructions in the corresponding source directory about how to install protobuf runtime for that specific language:

Language Source
C++ (include C++ runtime and protoc) src
Java java
Python python
Objective-C objectivec
C# csharp
JavaNano javanano
JavaScript js
Ruby ruby
Go golang/protobuf
PHP TBD

Usage

The complete documentation for Protocol Buffers is available via the web at:

https://developers.google.com/protocol-buffers/