如何更新通过Swift Package Manager导入Xcode项目的Swift包?
如何强制Swift Package Manager刷新GitHub Master分支的依赖更新
我太懂你这种反复删了重加依赖的麻烦了——完全是没必要的折腾!其实Swift Package Manager本身就自带了直接刷新分支依赖的方法,不用绕远路,下面给你两种最实用的高效方案:
方案一:用Xcode图形界面操作
这是最直观的方式,不用碰终端:
- 打开你的Xcode项目,点击顶部菜单栏的
File>Packages>Update to Latest Package Versions注意:如果你的Package依赖是直接指向master分支(没有指定版本号或范围),这个操作会直接拉取master上的最新提交。
- 要是你只想刷新某一个特定的包,而不是所有依赖:
- 打开项目导航栏(左侧面板),找到
Packages分组 - 右键点击你要刷新的那个包,选择
Update Package
- 打开项目导航栏(左侧面板),找到
方案二:用终端命令行操作
如果你习惯用终端,或者需要在脚本里自动化这个操作,直接在项目根目录(就是有Package.swift或者.xcodeproj文件的那个文件夹)执行下面的命令:
swift package update
这个命令会强制SPM检查所有依赖的最新版本,对于指向分支的依赖,就会拉取对应分支的最新提交。
额外提示:确保你的依赖配置正确
要是你发现刷新后还是没拿到最新的master代码,先检查一下你的依赖设置:
- 当你添加包的时候,确认选择的是
Branch选项,并且分支名是master(现在很多仓库改用main分支,别写错分支名) - 如果你是手动编辑
Package.swift文件,那你的依赖应该是类似这样的格式:
dependencies: [ .package(url: "https://github.com/your/repo.git", branch: "master") ]
确保这里指定的是branch而不是from或者exact这类版本约束,这样SPM才会每次刷新都拉取分支的最新代码。
这样操作下来,就再也不用手动移除再添加依赖啦,直接一键刷新就能拿到最新的master分支代码!
内容的提问来源于stack exchange,提问作者Michał Ziobro
相关产品推荐
相关产品推荐

