Xcode 项目中的可编辑 Swift 包?
Editable Swift package in Xcode project?
我正在 Xcode 中开发几个不同的应用程序,我为我的 "common" 库使用了一个 Swift 包。在每个项目中,我通过转到项目的 "Swift Packages"(在 "Info" 和 "Build Settings" 旁边)并输入本地 "file:///..." [= 来添加公共 Swift 包38=]。这检查了一个只读版本。一切都运行良好,但如果我对常用文件进行大量编辑,就会变得很烦人。我必须:
- 切换到另一个 Xcode window,其中 Swift 包以读写模式打开。
- 编辑文件,将它们提交到 git,标记提交
- 返回应用程序项目,菜单栏 > 文件 > Swift 包 > 重置包缓存(假设我移动了标签,而不是创建新标签)
有没有办法简化这个,这样我就可以编辑和编译 Swift 包中的文件,而不必每次都执行 git 步骤?
我发现我可以做到这一点,所以我正在回答我自己的问题。
您可以使用 Apple 这篇短文中所述的 "local package":Developing a Swift Package in Tandem with an App
我保持与以前相同的配置 — 我的应用程序项目仍然定义了 Swift 包依赖项,并且该依赖项仍然指向 git 存储库的相同 URL。但现在我还 checkout/clone 该存储库的本地副本,放入我的应用程序的项目目录中,或者如果我使用的是 Xcode 工作区,则可能更上一层。然后我将该克隆的目录拖到 Xcode 项目导航器中。一旦您将该文件夹放在那里,Xcode 就会对其 UI 进行一些调整,以反映它正在将其用作包的本地版本。您可以在那里编辑文件,并将更改推送回主仓库。如果您删除该本地克隆,Xcode 将像以前一样返回使用只读版本。
我正在 Xcode 中开发几个不同的应用程序,我为我的 "common" 库使用了一个 Swift 包。在每个项目中,我通过转到项目的 "Swift Packages"(在 "Info" 和 "Build Settings" 旁边)并输入本地 "file:///..." [= 来添加公共 Swift 包38=]。这检查了一个只读版本。一切都运行良好,但如果我对常用文件进行大量编辑,就会变得很烦人。我必须:
- 切换到另一个 Xcode window,其中 Swift 包以读写模式打开。
- 编辑文件,将它们提交到 git,标记提交
- 返回应用程序项目,菜单栏 > 文件 > Swift 包 > 重置包缓存(假设我移动了标签,而不是创建新标签)
有没有办法简化这个,这样我就可以编辑和编译 Swift 包中的文件,而不必每次都执行 git 步骤?
我发现我可以做到这一点,所以我正在回答我自己的问题。
您可以使用 Apple 这篇短文中所述的 "local package":Developing a Swift Package in Tandem with an App
我保持与以前相同的配置 — 我的应用程序项目仍然定义了 Swift 包依赖项,并且该依赖项仍然指向 git 存储库的相同 URL。但现在我还 checkout/clone 该存储库的本地副本,放入我的应用程序的项目目录中,或者如果我使用的是 Xcode 工作区,则可能更上一层。然后我将该克隆的目录拖到 Xcode 项目导航器中。一旦您将该文件夹放在那里,Xcode 就会对其 UI 进行一些调整,以反映它正在将其用作包的本地版本。您可以在那里编辑文件,并将更改推送回主仓库。如果您删除该本地克隆,Xcode 将像以前一样返回使用只读版本。