3 Star 13 Fork 4

Gitee 极速下载/Expo

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/expo/expo
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

React Native Lab

React Native Lab is where we put our latest copy of React Native (as a Git submodule) and scripts and modules to help use it in Expo Go.

React Native submodule

The react-native directory is a Git submodule whose origin is expo/react-native. We keep it on the latest sdk-* branch, and our sdk-* branches are based on upstream React Native releases.

Making changes to React Native

When you make changes to React Native that you intend to land upstream, you should clone expo/react-native, make your change on a branch, and send a PR to facebook/react-native. After your PR has been merged and released in an upstream version of React Native, we'll get your change in one or two future SDK releases. Design your changes in ways that make sense to merge them upstream. If there is Expo-specific code in a change, split it into an upstream PR that makes React Native more configurable and keep the Expo-specific code in Expo.

Making changes to Expo's React Native fork

Occasionally we'll cherry-pick changes from facebook/react-native#master into our current sdk-* branch but we really prefer to stay close to the upstream React Native release on which our current sdk-* branch is based.

To apply commits in projects that use the unversioned (that is, latest) SDK, add them to sdk-*. We do this sparingly and mainly for important bug fixes. Add a card to the "Expo Patches" column in our React Native Trello and actively work towards removing that card by merging a PR upstream or making your change unnecessary. To release these changes to developers, add the commits to the current sdk-* branch of expo/react-native and talk to whomever's responsible for releasing new Expo react-native versions.

We need our React Native fork to stay perpetually close to upstream. One way to think of our fork is an upstream release plus a small number of commits that have been merged upstream (and prefer commits that are in a stable release branch) or are likely to be merged soon. We also need our React Native fork to be replaceable with an upstream release of React Native when people using the Expo CLI eject to bare React Native.

Upgrading React Native

When we upgrade our version of React Native, we create a new branch called sdk-*, where * is the version of our next SDK. This branch is based on the latest stable release of React Native upstream. We cherry-pick in changes from the prior sdk-* branch that are still relevant and have not already been merged into the stable release branch.

The new sdk-* branch is used in a branch of Universe called sdk-*-candidate. After the client apps are in a nominal working state, we apply the expo#sdk-*-candidate branch's commits to expo#master.

马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
TypeScript
1
https://gitee.com/mirrors/Expo.git
git@gitee.com:mirrors/Expo.git
mirrors
Expo
Expo
main

搜索帮助