繁体   English   中英

一个分支上提交的更改会破坏另一个分支上的内容

[英]Committed changes on one branch break things on another branch

这是问题的概要:

  1. 我在 Xcode 模拟器上运行我的项目,一切正常。
  2. 我切换到一个新分支来更新 React Native。 我运行 npm 安装和 pod 安装。
  3. 我尝试构建它,它失败了,没问题,还有一些问题需要解决。
  4. 我提交我所做的更改,我稍后会回来。
  5. 我切换回第一个分支,现在构建失败,出现与我在新分支上遇到的错误相同的错误。

我没有对第一个分支做任何修改,git日志和之前一样,为什么会这样?

两者现在都在 Android Studio 中失败,但错误不同。

Xcode 错误:

ENOENT:没有这样的文件或目录——我认为这是因为我的路径中有一个空格。 在我进行更新之前这不是问题,但如果我解决了这个问题,我会得到:

沙箱与 podfile.lock 不同步(什么是沙箱?我想知道这是否是问题所在?)

Android 工作室错误:

Gradle 同步失败:找不到 ID 为“maven”的插件

问题不是错误,我可以找到解决这些问题的方法,问题是它在工作,没有任何改变,现在它不工作了。

我遇到过两次。 我第一次花几个小时阅读论坛并尽我所能,但唯一有帮助的是删除我的本地存储库并从远程拉下一个新的。 但是,如果我每次更新某些东西时不必这样做就好了。

有人遇到过这个吗?

如果有帮助,这里有一些规格:

  • Xcode:13.2.1
  • MacOS:蒙特雷 12.2(英特尔)
  • MacBook 专业版,16G
  • 第一个分支上的 React Native:0.65.1
  • 在新分支上反应本机:0.67.4
  • Android 工作室:大黄蜂| 2021.1.1 补丁 2
  • 第一个分支上的节点:12.19.1
  • 第一分行 npm:15 年 6 月 14 日
  • 新分支上的节点:16.14.0
  • npm 在新分支上:8.3.1

提前谢谢了!

问题可能是对 gitignore 中的文件进行了更改,可能是 Podfile.lock 和 node_modules 中的文件。 当切换回原来的分支时,你必须再次运行 yarn / npm install,然后 pod install。 当 Pods 目录的内容与 Podfile 中规定的内容不同步时,就会发生“沙盒”错误。

如果您已经这样做了,请尝试停止您的 Metro 实例并运行npx react-native-clean-project 有几个缓存可能需要失效或刷新:原生构建、Metro、gradle、watchman 等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM