gpt4 book ai didi

iphone - 由于 SVN 缓存的 SQLite 数据库

转载 作者:行者123 更新时间:2023-12-03 19:07:49 24 4
gpt4 key购买 nike

我的 iPhone 应用程序使用 Core Data 和 SQLite 数据库;正在使用 SVN 跟踪版本。向数据库添加数据不会反射(reflect)在应用程序中。我确保将项目从模拟器中删除,并将新数据库作为文件添加到项目中。我怀疑数据被缓存在另一个位置。

请注意,即使直接编辑,SVN 也不会显示对数据库的更改。另外,如果我将项目复制并粘贴到一个新文件夹,删除隐藏的 svn 文件夹,删除构建文件夹,编辑数据库,从模拟器中删除项目,然后编译并运行,它第一次工作。之后,数据再次缓存在某个未知位置。

任何想法这可能是什么?

更新:
解决方案是退出我的 SVN 客户端(版本)。我仍然不确定这对数据库的更新有何影响;我认为它不会阻止或恢复任何更改。我现在可以编辑和保存更改。

感谢大家的帮助。

最佳答案

这里可能不止有几件事情出错。如果您通过引用将 SQLite DB 添加到您的项目中,并且如果您没有进行任何代码更改,那么当您单击“构建”时,您将不会看到您更改的数据库资源被复制过来。基本上,Xcode 在感知(引用的)资源何时发生变化时存在长期存在的问题。进行干净的构建是您的核心选择,因为根据您的编译时间,它可能需要相当长的时间。更好的选择是从构建目录中删除 .app 包。 Xcode 重建并不需要很长时间,尽管如果你有很多资源,它也可能需要一段时间。最好的选择(我使用的那个)是在引用包含的文件夹的根级别保留一个“虚拟”文件(假设它是一个空白文本文件),当我更新资源时,我将更改为虚拟文件,撤消更改,然后点击保存(在 Xcode 中)。这会触发 Xcode 中的某些内容以递归方式遍历包含的目录以查看是否有任何更改。

除此之外,如果您正在修改数据库文件,并且 SVN 告诉您您没有对其进行更改,那么您还有其他问题。简单地说,你确定DB文件已经被添加并 checkin 到SVN,所以SVN知道吗?你确定你正在编辑你在 SVN 中检查的同一个文件吗?

关于iphone - 由于 SVN 缓存的 SQLite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3355579/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com