问题标签 [gitattributes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
55 浏览

git - GitAttributes -[attribute]=[value]:为什么要应用“-”并赋值?

gitattributes在过去几天阅读它们之后,我了解大多数选项。然而,在gitattributes 中有一种配置类型可以解决你所有的问题GitHub gist (GistHub?) 我不太明白。第三组属性中的几行类似于

我自己理解这条线的大部分部分,但在一起我不确定这意味着什么。意思是“*.vb将此设置用于具有.vb扩展名的文件”。同时,-text表示“为带有扩展名的文件取消设置text属性,或将其设置为false .vb”和表示“为带有扩展名的文件=auto设置属性-text值”。auto.vb

这就是我的困惑所在:如何在设置的同时取消设置?您如何同时将某些内容设置为两个值(此处falseauto)?这是一些秘密的忍者方法来增强你的能量gitattributes吗?

0 投票
2 回答
489 浏览

git - 让它就好像我一直都有 .gitattributes

我有一个相当新的存储库,其中包含 12 个提交,所有这些都没有行尾规范化。

没有其他人在使用存储库,我想重写历史记录,以便从一开始就应用行尾规范化(并避免中间的提交更改行尾)。

这可以用git rebase -i其他方法完成吗?我猜只是重新排序并提交.gitattributes到开头不会解决它。

0 投票
2 回答
1580 浏览

git - .gitattributes 涂抹和清洁过滤器作为存储库的一部分

我的 git 存储库中有许多模板文件,它们以不同的速率变化。这些然后用于生成 HTML 页面。如果有人报告了问题,我希望他们能够告诉我哪个版本的模板文件有问题。目前,我在更改日期时手动将日期输入到文件中。或者,好吧,我尝试。我大部分时间都忘记了。

至少在理论上,我应该能够使用 git smudge 和 clean 过滤器来修复文件并自动插入上次更新的日期。这会很棒。

除了我在一台机器上开发,当我准备好时,我推/拉到另一台机器。

如何让污迹和清洁过滤器出现在另一台机器上?我不想在路径中添加奇怪的脚本;这只需要这个存储库,所以我想让它完全独立。网上的所有内容都说“将此过滤器定义添加到您的 ~/.gitconfig,然后将这些脚本添加到您的路径,然后设置存储库 .gitattributes 文件”。我想要它,这样如果我去一台新计算机并克隆存储库,所有的清洁和涂抹都会自动配置。

有人做过吗?

0 投票
1 回答
612 浏览

git - 如何在 git 中与 merge=union 自动合并后查看冲突

我有*.csproj merge=union.gitattributes我很高兴 git 如何管理与它的合并。但在其他时候,git 合并 xml 文件的工作会做得很差,例如*.csproj(因为我听说缺少适当的 xml 合并驱动程序)并且我无法再加载 VS 项目。

所以我git reset --hard HEAD^再试一次,git merge --no-commit --no-ff这样我就可以在提交合并之前偷偷摸摸。

例如:

此时README包含:

然后我尝试查看 的冲突版本README,因此我可以深入了解冲突并手动解决:

我期待类似的东西:

但我仍然得到:

请问我在这里缺少什么?

谢谢你。

0 投票
1 回答
111 浏览

git - 我将如何保护某个文件不被 git 过滤器处理?

假设我有一个 git 过滤器,它对我项目中使用的 XML 文件进行了一些清理。配置是这样完成的:

filter 在该步骤中所做的一件事clean是检查文件末尾是否有空行,如果没有,则添加一个。过滤器的smudge部分什么都不做。

现在,生成了这个唯一的 XML 文件,最后没有空行。该文件不应由clear-xml过滤器处理。

我将如何解决这个问题?

0 投票
1 回答
1600 浏览

git - .gitattributes 中的合并策略不起作用

我希望 git 在此文件上永远不会发生冲突:
test/file.txt
合并时。我在 .gitattributes test/file.txt merge=theirs 中尝试了以下内容

但我需要定义theirs合并策略。我在网上看到我可以ours通过执行这个来定义策略:
git config --global merge.theirs.driver true
它将驱动程序设置为true(bash true),这将保留本地文件而不是新文件。
我想做相反的事情。如何定义theirs驱动程序以获取新副本并在合并时丢弃本地副本(在 git pull 之后)?

0 投票
2 回答
42162 浏览

git - 我应该把我的全局“gitattributes”文件放在哪里?

我收集有(尽管缺乏文档)一种全局设置Git 属性的方法;但我不清楚在哪里放置必要的gitattributes文件。说明他们属于

但在哪里$(prefix)?特别是,对于 OS X(带有 Git /usr/local/git/bin/git),它会在哪里?交替(或另外)会~/.gitattributes 起作用吗?

0 投票
1 回答
559 浏览

git - 忽略 .gitattributes 文件中的 text=auto

我检查了一个分支foo,现在我想切换到分支bar

有人有一个.gitattributes文件,foo其中包括

所有“更改”都是换行符更改。

我可以删除文件,切换分支,然后将其添加回来。

这是最好(最快/最少打字)的方式吗?

编辑:要清楚,我只想切换分支。我只是在阅读回购。除了工作树之外,我不想更改任何内容。但我不能。

0 投票
1 回答
7353 浏览

git - diff 和 diff=astextplain 有什么区别?

有人能帮我吗。我正在使用 Git (GitHub) 并试图决定*.sql在 gitattributes 中将我的文件设置为什么。我见过人们使用

有人建议我将其设置为第二个选项,但我只是想知道它与其他两个选项有什么区别。

0 投票
1 回答
635 浏览

git - 使用 .gitattributes 在所有平台上的 git repo 中强制 LF eol

我有一个远程仓库,正在被克隆并在 windows 和 mac 中工作。我希望每当有人拉这个 repo 时,它应该在任何平台上自动使用 LF eol。

每当 Windows Build Server 拉取 repo 时,我的主要问题就会出现。我无法控制在服务器上执行任何配置命令,所以我只想使用 .gitattributes 文件来解决这个问题。LF 的原因是有一些构建工具要求源文件是 LF eol。

这个文件是说所有文本文件都将使用 LF eol 签出,同时跳过 jpg 和 png 文件?如果不是,这个文件会是什么样子来完成上述任务?

.git 属性文件