Crashlytics git管理

Feb*_*ble 6 git xcode crashlytics

我遇到了分支合并失败的问题,因为Crashlytics二进制文件正在发生变化.我将Crashlytics添加到gitignore,但是现在如果我再签出分支机构,框架就不会出现了.

有没有办法处理合并冲突或告诉git忽略文件更改的方法,但保留文件本身?

tex*_*ell 1

如果您希望该文件位于新克隆中,或者在清理 git 存储库后,需要由 git 跟踪该文件。

二进制文件不太适合合并。从你的问题来看,听起来没有什么可以合并的,但决定只是保留哪个文件。您可以做的一件事是通过 .gitattributes 和 .git/config 设置为这些二进制文件定义自定义自动合并行为:

将以下内容添加到您的 .gitattributes (或在 git 存储库的根目录中创建一个包含该内容的新文件)

path/to/file merge=nomerge
Run Code Online (Sandbox Code Playgroud)

并将以下内容放入 git 配置文件(.git/config 或 ~/.gitconfig)

[merge "nomerge"]
name = keep current version
driver = true
Run Code Online (Sandbox Code Playgroud)

这指示 git 忽略冲突并保留要合并到的分支中的文件。指定driver = true用于合并的外部程序。在这种情况下,该程序true应该可以在任何类 UNIX 系统上使用,并且不会成功执行任何操作。如果您需要更智能的东西,请参阅gitattributes 联机帮助 页中定义自定义合并驱动程序的部分,了解添加真正自定义逻辑的方法。On 可以做非常复杂的事情,例如始终保留文件的较高版本(例如,如果文件中有任何版本指示符)。

您应该将git add.gitattributes 文件添加到存储库中。实际的合并驱动程序定义不能以新克隆自动开箱即用的方式存储。因此,您需要将其手动添加到每个克隆中或您需要的每台计算机上的每用户配置中。