【问题标题】:Git automatically changing file extensionsGit 自动更改文件扩展名
【发布时间】:2015-11-06 18:41:46
【问题描述】:

我有一个 git 存储库,其中包含一些 fortran 源代码,在 windows 上具有文件扩展名 .for。此代码由第 3 方软件编译和运行,如果文件扩展名不是 .for,则会引发错误。这个第 3 方软件的一个相当烦人的特性是,在 linux 上,它需要一个 .f 文件扩展名来用于相同的 fortran 源代码文件。因此,当我将 git repo 克隆到 linux 系统时,我必须将 fortran 源文件更改为 .f。如何配置 git 自动执行此操作,所以当我克隆到 linux 时,所有 fortran 文件都有 .f 文件扩展名,而在 Windows 上相同的文件是 .for

【问题讨论】:

    标签: linux windows git file-extension


    【解决方案1】:

    这不是真正的git问题,所以你发现的障碍主要是因为你想用锤子来完成螺丝刀的任务。

    代替你,我会做以下事情之一:

    • git 可以很好地处理符号链接,因此您可以在.for 上为每个.f 文件构造一个符号链接(例如:for x in *.f;do ln -svf ${x%.f}.for $x;done
    • 您可以在.git 目录中为签出和提交设置挂钩,根据需要在提交之前/之后重命名文件。您可以对其进行设置,以便在本地仓库中拥有 .for,而在远程仓库中拥有 .f

    第一个更简单,但不是很漂亮。第二个非常漂亮,但需要复杂的脚本,而且它会不稳定(挂钩脚本的一些小问题可能会损害您的源代码)。对我来说,第一个更好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-09
      • 2023-04-08
      • 2012-12-01
      • 2011-07-12
      • 2011-02-23
      • 2012-06-15
      相关资源
      最近更新 更多