Примеры стека Google с открытым исходным кодом и его развертывания в облаке.
Основные технологии в стеке:
Попробуйте эти руководства по Google Cloud Shell:
Многоязычный инструмент форматирования кода, созданный с помощью Bazel:
Обратная совместимость API переименования полей и перечислений 1: как старые данные могут быть прочитаны в новой версии даже после переименования:
Обратная совместимость API переименования полей и перечислений 2: как старые выпуски могут взаимодействовать с новыми выпусками без нарушений:
подлежит уточнению
Protos, gRPC и Bazel — полиглоты. Примеры в этом репозитории в основном написаны на Java и Typescript, но есть поддержка многих других языков:
В разделе инструментов есть несколько полезных инструментов.
Вы можете рассматривать StartupOS как «образ разработчика» с предварительно созданной настройкой и соответствующими инструментами.
Вы можете:
Установите Базель. Вот и все!
./build.sh
./test.sh
Монорепо — это подход к разработке программного обеспечения, при котором весь код хранится в одном репозитории. Некоторые вещи проще делать в монорепозитории, например совместное использование файла прототипа между интерфейсом и сервером, некоторые вещи сложнее, например контроль над соавторами для каждого репозитория, уведомления по электронной почте, историю коммитов и т. д. Мы работаем над подход, при котором несколько репозиториев могут действовать как один монорепозиторий, оставаясь при этом отдельными репозиториями, с использованием инструментов для нескольких репозиториев, таких как проверка кода для нескольких репозиториев.
Несколько хороших отзывов о подходе монорепо:
Хотя Bazel поддерживает Linux, Mac и Windows, этот репозиторий поддерживает Linux и Mac. Если вы используете Windows 10, вы можете использовать подсистему Windows для Linux (WSL). Это дает вам среду Linux без затрат на виртуальную машину.
Пожалуйста, следуйте руководству. Примечание. Возможно, вам придется выполнить обновление Windows. Если он вам нужен, он запросит его в начале установки.
Вы можете внести свой вклад и при этом изучить эти технологии. Вы можете просмотреть список проблем или основные этапы проекта.