如何始终在mercurial pull/update中更新给定文件?

如何始终在mercurial pull/update中更新给定文件?,mercurial,pull,Mercurial,Pull,我有一个文件(某种数据库),在开发人员测试代码时更新,并推送到mercurial中央存储库 我希望每个人都能重用这个文件,因此,无论何时从我们的中央存储库进行拉/更新,本地版本都应该替换为集中存储的版本。换句话说,我只想对该文件执行hg update-C,并在拉取时自动完成 mercurial有可能做到这一点吗?开发人员可以添加一个钩子来实现这一点,但您无法创建它们(除非您能够控制他们的机器) 克隆的.hg/hgrc文件中的类似内容将删除本地文件,因此更新会将其替换为新文件: [hooks] p

我有一个文件(某种数据库),在开发人员测试代码时更新,并推送到mercurial中央存储库

我希望每个人都能重用这个文件,因此,无论何时从我们的中央存储库进行拉/更新,本地版本都应该替换为集中存储的版本。换句话说,我只想对该文件执行
hg update-C
,并在拉取时自动完成


mercurial有可能做到这一点吗?

开发人员可以添加一个钩子来实现这一点,但您无法创建它们(除非您能够控制他们的机器)

克隆的
.hg/hgrc
文件中的类似内容将删除本地文件,因此更新会将其替换为新文件:

[hooks]
preupdate = rm path/to/databasefile
当然,请记住,该更新将使文件的版本与用户正在更新的变更集中显示的版本相同。因此,如果您执行hg update--rev0,您将获得该文件的第一个版本,而不是最新版本中的版本

另一方面,通常如果有一个文件变化很大并且无法合并,那么最好让它成为带外获取的未跟踪/忽略的文件——例如,让您的启动脚本下载最新版本