使用Beanstalk / Github / Bitbucket中的Git进行FileMaker Pro版本控制?

问题描述 投票:1回答:3

我们目前使用Subversion进行FileMaker开发的版本控制,但我们开始探索转向Git。我们听说过一些关于人们在使用Git for FileMaker文件时遇到文件损坏的传闻,但我无法追踪任何真实来源。

是否有人使用Git进行FileMaker Pro文件的版本控制?除了需要在提交之前完全关闭文件之外,您有任何问题吗?

git github bitbucket filemaker elastic-beanstalk
3个回答
6
投票

我已经将Git和Subversion用于FileMaker文件的版本控制。 Chris对大小限制提出了一些好处,但是在使用git时有一些方法可以做到最好。

FileMaker的版本控制文件损坏

我怀疑谣言来自的文件损坏并非来自git用法,而是来自用户在使用git时如何与文件进行交互。

打开FileMaker文件后,FileMaker客户端将直接与二进制文件本身进行交互。在文件处于活动状态时,正在读取和写入数据和结构,因此如果您尝试在该过程中提交文件,则可能会导致损坏。 Git和Subversion的风险相同。

无论何时使用FileMaker文件和版本控制,都需要确保在提交之前关闭文件。您不一定需要关闭FileMaker,但需要关闭该文件。

此外,请确保文件真正关闭。您可以认为该文件已关闭,并且打开了隐藏或屏幕外窗口。转到窗口菜单,确保在提交之前关闭所有窗口。

文件大小

你绝对可以将git用于FileMaker文件,但如果你要推送到公共远程托管服务提供商,你将遇到这些大小限制。也就是说,如果你有自己的本地git服务器,那么大小也不是问题。

在存储库中处理大小时,最好的办法是将克隆提交到存储库。如果您使用的是FileMaker Server,则可以使用启用了克隆的备份计划来轻松地将它们吐出。这也会解决打开文件问题,因为您将提交克隆备份,而不是活动文件。

这可能很痛苦,因为现在您的所有数据都不在文件中,并且FileMaker没有良好的内置自动化来重新输入数据,但是您可以构建一个运行文件来运行从您填充的文件中导入的数据(在版本控制)进入你的克隆(在版本控制中)。我们几乎为公司的每个项目都这样做。

归根结底,在版本控制中跟踪重要的是结构而不是数据本身。存储克隆应该减少文件大小,以使任一版本控制系统可行。


4
投票

我没有使用FileMaker的经验,但Git非常擅长维护你提交的东西的完整性。 (是的,您可能需要退出应用程序以确保在提交之前事物处于一致状态,但这是一个FileMaker事物,而不是Git事物。)

但是,如果FileMaker文件是(a)二进制或(b)大,您可能希望继续查找。 Git的许多功能都是围绕使用文本文件而设计的,任何类型的大型文件都可能导致存储库大小和性能受损。例如,我不会用它来版本Access数据库。

另请注意,托管Git提供程序通常具有文件和存储库的最大文件大小。

例如,GitHub目前在100MB per file, 1GB per repository设置配额。在同一页面上,他们还明确地说recommend against storing database dumps,它们通常是非常大的文本文件。

Bitbucket有一个soft 1GB repository limit and a hard 2GB repository limit


1
投票

您可以将Filemaker文件的克隆保存到Git仓库中。这将绕过所有但非常大的数据库的Git限制,并避免将未封闭文件写入repo(“损坏”)的问题。

© www.soinside.com 2019 - 2024. All rights reserved.