Damien Martin-Guillerez | 4885eef | 2016-10-28 12:02:50 +0000 | [diff] [blame] | 1 | # [Bazel](http://bazel.build) ([Beta](http://bazel.build/roadmap.html#beta)) |
Han-Wen Nienhuys | d08b27f | 2015-02-25 16:45:20 +0100 | [diff] [blame] | 2 | |
| 3 | *{Fast, Correct} - Choose two* |
| 4 | |
Googler | 5fba619 | 2015-03-17 22:12:05 +0000 | [diff] [blame] | 5 | Bazel is a build tool that builds code quickly and reliably. It is used to build |
| 6 | the majority of Google's software, and thus it has been designed to handle |
Googler | f346901 | 2015-03-18 15:33:20 +0000 | [diff] [blame] | 7 | build problems present in Google's development environment, including: |
Han-Wen Nienhuys | d08b27f | 2015-02-25 16:45:20 +0100 | [diff] [blame] | 8 | |
Googler | 5fba619 | 2015-03-17 22:12:05 +0000 | [diff] [blame] | 9 | * **A massive, shared code repository, in which all software is built from |
| 10 | source.** Bazel has been built for speed, using both caching and parallelism |
Googler | f346901 | 2015-03-18 15:33:20 +0000 | [diff] [blame] | 11 | to achieve this. Bazel is critical to Google's ability to continue |
Googler | 5fba619 | 2015-03-17 22:12:05 +0000 | [diff] [blame] | 12 | to scale its software development practices as the company grows. |
Han-Wen Nienhuys | d08b27f | 2015-02-25 16:45:20 +0100 | [diff] [blame] | 13 | |
Googler | c9a9f4c | 2015-03-24 15:55:18 +0000 | [diff] [blame] | 14 | * **An emphasis on automated testing and releases.** Bazel has |
Googler | 5fba619 | 2015-03-17 22:12:05 +0000 | [diff] [blame] | 15 | been built for correctness and reproducibility, meaning that a build performed |
| 16 | on a continuous build machine or in a release pipeline will generate |
Googler | f346901 | 2015-03-18 15:33:20 +0000 | [diff] [blame] | 17 | bitwise-identical outputs to those generated on a developer's machine. |
Googler | 5fba619 | 2015-03-17 22:12:05 +0000 | [diff] [blame] | 18 | |
Googler | f346901 | 2015-03-18 15:33:20 +0000 | [diff] [blame] | 19 | * **Language and platform diversity.** Bazel's architecture is general enough to |
Googler | 5fba619 | 2015-03-17 22:12:05 +0000 | [diff] [blame] | 20 | support many different programming languages within Google, and can be |
| 21 | used to build both client and server software targeting multiple |
| 22 | architectures from the same underlying codebase. |
| 23 | |
Damien Martin-Guillerez | 4885eef | 2016-10-28 12:02:50 +0000 | [diff] [blame] | 24 | Find more background about Bazel in our [FAQ](http://bazel.build/faq.html). |
Googler | 5fba619 | 2015-03-17 22:12:05 +0000 | [diff] [blame] | 25 | |
Googler | e7bfc7e | 2015-03-18 22:03:53 +0000 | [diff] [blame] | 26 | ## Getting Started |
Han-Wen Nienhuys | d08b27f | 2015-02-25 16:45:20 +0100 | [diff] [blame] | 27 | |
Damien Martin-Guillerez | 4885eef | 2016-10-28 12:02:50 +0000 | [diff] [blame] | 28 | * How to [install Bazel](http://bazel.build/docs/install.html) |
| 29 | * How to [get started using Bazel](http://bazel.build/docs/getting-started.html) |
| 30 | * The Bazel command line is documented in the [user manual](http://bazel.build/docs/bazel-user-manual.html) |
| 31 | * The rule reference documentation is in the [build encyclopedia](http://bazel.build/docs/be/overview.html) |
| 32 | * How to [use the query command](http://bazel.build/docs/query.html) |
| 33 | * How to [extend Bazel](http://bazel.build/docs/skylark/index.html) |
| 34 | * The test environment is described on the page [writing tests](http://bazel.build/docs/test-encyclopedia.html) |
Han-Wen Nienhuys | d08b27f | 2015-02-25 16:45:20 +0100 | [diff] [blame] | 35 | |
David Chen | 3f16b56 | 2015-07-23 15:04:50 +0000 | [diff] [blame] | 36 | ## About the Bazel project: |
Han-Wen Nienhuys | d08b27f | 2015-02-25 16:45:20 +0100 | [diff] [blame] | 37 | |
Damien Martin-Guillerez | 4885eef | 2016-10-28 12:02:50 +0000 | [diff] [blame] | 38 | * How to [contribute to Bazel](http://bazel.build/contributing.html) |
| 39 | * Our [governance plan](http://bazel.build/governance.html) |
| 40 | * Future plans are in the [roadmap](http://bazel.build/roadmap.html) |
| 41 | * For each feature, which level of [support](http://bazel.build/support.html) to expect. |
Damien Martin-Guillerez | 5e23954 | 2016-11-07 15:41:20 +0000 | [diff] [blame] | 42 | |
| 43 | [](http://ci.bazel.io/job/bazel-tests) |