开发者

Right way of tracking a sqlite3 binary file in git?

开发者 https://www.devze.com 2023-02-20 08:11 出处:网络
I maintain a fork of a repo. That repo which has been tracking a binary fi开发者_如何学Pythonle (which is a sqlite3 file).

I maintain a fork of a repo.

That repo which has been tracking a binary fi开发者_如何学Pythonle (which is a sqlite3 file).

Every time I pull from that repo, I experience merge conflict due to that binary file.

What is the right way to solve this kind of merge conflict?

What is the right way to manage binary files (like this sqlite3 *.db file) in git?


You could define a custom merge driver specifying to always "keep theirs" (copy the version you are pulling) on top of your current version.

.gitattributes

mysqlite3.db merge=keepTheir

(That being said, remember binaries aren't always best managed with Git, especially if they are modified often)


I've released a tool that does what you're asking for. It uses a custom diff driver leveraging the sqlite projects tool 'sqldiff', UUIDs as primary keys, and leaves off the sqlite rowid. It is still in alpha so feedback is appreciated.

https://github.com/cannadayr/git-sqlite

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号