我们定制的 IDE 输出带有编码的 XML 文件,使它们看起来像二进制文件。这些文件的差异和合并失败。
我们可以使用命令创建这些文件的 ASCII 版本tr
。我想达到这些文件在提交之前总是自动转换为 ascii 的状态。
我拿起了我的版本控制与 Git的副本,它全心全意地警告我不要使用钩子,除非我真的需要。
我应该为此目的使用钩子吗?或者我可以做其他事情来确保文件在提交之前总是被转换吗?
带有 msysgit 1.7.4 的 Windows XP
--= 更新 =-
感谢大家的帮助和耐心。看着这个问题,我尝试了以下方法,但它不起作用:
echo "*.xrp filter=xrp" > .git/info/attributes
git config --global filter.xrp.clean 'tr -cd '\''\11\12\15\40-\176'\'''
git config --global filter.xrp.smudge cat
git checkout --force
此配置更改后文件保持不变。即使我删除并重新结帐。
tr
配置为 clean 任务的命令确实独立工作。证明:
$ head -n 1 cashflow/repo/C_GMM_CashflowRepo.xrp
ÿþ< ! - - X M L R e p o s i t o r y f i l e 1 . 0 - - >
$ tr -cd '\''\11\12\15\40-\176'\' < cashflow/repo/C_GMM_CashflowRepo.xrp | head -n 1
<!-- XML Repository file 1.0 -->
谁能看到我的配置有什么问题?