如何通过命令行在.gitattributes文件中设置文件属性

时间:2019-02-25 08:08:33

标签: gitlab gitattributes

我有一个简单而幼稚的问题。我想编辑.gitattributes文件中的某些文件属性。如何通过命令行执行此操作,而无需检出文件并在进行更改后再次提交文件。 例如我们可以通过git check-attr -a *.txt命令查看文件属性(以显示.txt文件的所有属性)。我需要类似的方法来设置文件属性。 已经有这种方法了吗?

谢谢。

1 个答案:

答案 0 :(得分:0)

属性定义不一定来自位于项目数据库中的文件,它实际上取决于这些属性所需的范围。从git帮助中:

  

如果您只希望影响单个存储库(即,为该存储库的一个用户工作流程特有的文件分配属性),则应将属性放置在$ GIT_DIR / info / attributes文件中。应该由版本控制并分发到其他存储库的属性(即,所有用户都感兴趣的属性)应放入.gitattributes文件中。应该影响单个用户所有存储库的属性应放置在core.attributesFile配置选项指定的文件中(请参阅git-config [1])。其默认值为$ XDG_CONFIG_HOME / git / attributes。如果$ XDG_CONFIG_HOME未设置或为空,则使用$ HOME / .config / git / attributes。系统上所有用户的属性都应放在$(prefix)/ etc / gitattributes文件中。

因此,如果确实需要为项目的所有用户设置文件属性,则除了提交.gitattributes文件之外,您别无选择。

如果要将属性设置为项目的本地版本:

  1. 通过git工具更改文件属性:只能使用git config来完成此操作,但只能用于属性子集(eol)和所有文件
  2. 您可以更改$GIT_DIR/info/attributes中的文件