全局 Git 忽略

10 浏览
0 Comments

全局 Git 忽略

我想设置Git全局忽略特定文件。\n我已经在我的主目录(/Users/me/)中添加了一个.gitignore文件,并在其中添加了以下行:\n*.tmproj\n但是它并没有忽略这种类型的文件,你有什么想法我做错了什么吗?

0
0 Comments

全局Git忽略文件(Global Git ignore)是用于在Git版本控制系统中指定全局忽略规则的文件。这个问题的出现是因为需要配置全局忽略文件的路径,以便正确地添加新的文件屏蔽规则。

要查看当前全局忽略文件的配置,可以使用以下命令:git config --get core.excludesfile。运行这个命令后,可以得到当前全局忽略文件的路径,比如

~/.gitignore_global

,以及其中已经存在的一些文件屏蔽规则。因此,在给定的问题中,首先要检查是否已存在一个全局忽略文件,并将新的文件屏蔽规则添加到该文件中。

默认情况下,Git会在一个特定的位置寻找全局忽略文件,而git config --get core.excludesFile命令无法返回该位置。如果该命令没有返回任何内容,那么当前的配置可能是类似于~/.config/git/ignore的路径。有关更多信息,请参考下面这个回答:stackoverflow.com/a/22885996/9849440

为了解决这个问题,可以按照以下步骤操作:

1. 运行git config --get core.excludesfile命令,查看当前全局忽略文件的配置。

2. 如果返回了一个路径,说明已经存在全局忽略文件,可以直接编辑该文件,并将新的文件屏蔽规则添加到其中。

3. 如果没有返回任何内容,说明当前没有配置全局忽略文件。此时,可以创建一个新的全局忽略文件,比如~/.gitignore_global

4. 编辑该全局忽略文件,添加新的文件屏蔽规则。

5. 运行git config --global core.excludesfile ~/.gitignore_global命令,将新创建的全局忽略文件路径配置到Git中。

6. 现在,Git将会自动忽略该全局忽略文件中指定的文件。

通过以上步骤,即可解决全局Git忽略文件的配置问题。

0
0 Comments

在git中,有一个全局的git忽略文件,可以用来存放用户希望在所有情况下都要忽略的文件或模式。然而,有些用户可能会遇到找不到全局git忽略文件的问题。下面是问题的原因以及解决方法。

问题原因:

用户设置全局配置值时,可能会导致找不到全局git忽略文件的问题。全局git忽略文件的默认位置可能因操作系统的不同而有所区别。

解决方法:

用户可以通过以下命令检查全局git忽略文件是否存在:

git config --get core.excludesfile

根据操作系统的不同,全局git忽略文件通常位于以下位置:

*nix系统:

~/.config/git/ignore

Windows系统:

%USERPROFILE%\.config\git\ignore

如果找不到全局git忽略文件,用户可能需要手动创建git文件夹和ignore文件,并通过以下命令告诉git全局git忽略文件的位置:

git config --global core.excludesfile ~/.config/git/ignore

然后,用户可以将全局忽略的内容放入该文件中。

这是一个很好的解决方法,但是有人担心这个文件会在更新或重新安装时被覆盖。实际上,这个文件是通过运行特定的git命令来创建或修改的。由于它是每个用户目录中的设置文件,所以不应该被覆盖。

这个解决方法是可以接受的,但是有人指出在文档中并没有找到这个解决方法。实际上,这个解决方法是通过编辑答案来反映源文件的改变的。

对于Windows系统,有人问Windows路径是什么,答案是~/.config/git/ignore

有人问完成这些步骤后是否还需要运行git config --global core.excludesfile命令。实际上,完成这些步骤后不需要再运行该命令。

对于macOS系统,默认情况下无法正常工作。根据git文档的说明,$XDG_CONFIG_HOME/git/ignore, $GIT_DIR/info/exclude, .gitignore这些文件将被解析,但是macOS默认情况下没有设置$XDG_CONFIG_HOME变量。因此,如果git config --get core.excludesfile命令没有输出文件夹路径,说明设置没有成功,用户需要手动设置git config --global core.excludesfile ~/.config/git/ignore或其他方便的位置。

在Windows系统上使用默认的忽略文件非常好,因为它将被Git for Windows和Cygwin附带的Git同时使用。

对于一些用户来说,core.excludesFile默认情况下并没有设置任何值。因此,即使使用了列出的路径,用户仍然需要设置core.excludesFile配置。

这个解决方法在macOS上默认情况下是有效的。

这个解决方法肯定是最好的,有没有办法覆盖已经接受的答案呢?如果用户按照其他答案的方法进行操作,可能会使自己的生活变得更复杂。

该解决方法在Mac OS X git版本2.24.3 (Apple Git-128)上默认情况下有效。

~/.config文件的位置可以通过设置XDG_CONFIG_HOME环境变量来自定义。在macOS上,这几乎是必须的。

以上就是关于全局git忽略文件问题的原因和解决方法的整理。

0
0 Comments

全局Git忽略(Global Git ignore)是一个用于解决Git忽略文件的问题的配置文件。下面是这个问题的出现原因以及解决方法的整理:

问题出现的原因是因为Git需要一个全局的忽略文件来指定需要忽略的文件。为了解决这个问题,需要设置全局的core.excludesfile配置文件,将其指向全局忽略文件的路径。具体的解决方法如下:

1. 对于*nix或Windows Git Bash系统,可以使用以下命令设置全局忽略文件的路径:

git config --global core.excludesFile '~/.gitignore'

2. 对于Windows的cmd命令行,可以使用以下命令设置全局忽略文件的路径:

git config --global core.excludesFile "%USERPROFILE%\.gitignore"

3. 对于Windows的PowerShell,可以使用以下命令设置全局忽略文件的路径:

git config --global core.excludesFile "$Env:USERPROFILE\.gitignore"

需要注意的是,以上命令只会设置Git使用的忽略文件的路径,并不会自动创建和填充忽略文件。所以在指定的路径下,需要手动创建并填充忽略文件。

为了验证配置值是否正确,可以使用以下命令查看全局忽略文件的路径:

git config --global core.excludesFile

命令的输出结果应该是用户个人资料路径下.gitignore的完整路径,确保该值不包含未展开的%USERPROFILE%字符串。

如果在git status命令的输出中仍然看到了未跟踪的文件,可能是因为这些文件曾经被跟踪过。但只要这些文件不在HEAD或索引中,它们就不会产生影响。

由于Git存在多个级别的配置(系统级、全局级、本地级),为了找到"effective"的core.excludesfile,可以使用以下命令:git config core.excludesfile。该命令会显示当前生效的全局忽略文件的路径,可能是$HOME/.gitignore_global等。

~/.gitignore中,可以使用#在行的开头添加注释。

需要注意的是,最近版本的官方Git Windows工具包使用*nix语法,所以如果命令不起作用,可以尝试使用*nix语法。

对于Windows系统,有些用户在设置全局忽略文件路径时,%USERPROFILE%变量可能无法正常工作。可以尝试使用%HOME%代替%USERPROFILE%

如果使用上述命令后仍然无法生效,可能是因为忽略文件未正确创建或填充。需要手动在指定的路径下创建并填充忽略文件。

在Windows系统中,命令在CMD中可以正常工作,但在PowerShell中可能不起作用。

需要注意的是,如果在配置全局忽略文件之后才应用更改,需要清除仓库缓存才能使更改生效。

引号实际上是不必要的,可以直接使用git config --global core.excludesfile ~/.gitignore命令。

在某些情况下,%USERPROFILE%无法正常工作,可以尝试使用实际的路径。

如果只是想为一个特定的仓库忽略某个文件,而不想更改全局配置,可以使用命令git config --local core.excludesfile ""

在Windows系统中,复制上述示例时要注意引号。确保在命令中使用正常的双引号,否则可能会导致特殊的引号字符被识别为路径的一部分,从而导致命令无效。

可以使用!来取消全局忽略文件的规则。例如,如果全局忽略文件中包含/src/,但是对于某个特定的项目,希望保留/src/,可以在项目的忽略文件中添加!/src/

对于使用WSL(Windows子系统)的用户,~/.gitignore也可以正常工作。

另外,还有一种方法可以在不将其提交到仓库中的情况下,为特定的仓库设置忽略列表。可以在仓库的.git文件夹中设置一个文件,该文件只在本地有效。具体操作可以查看相关文档。

需要注意的是,Git已经有一个默认的全局忽略文件的位置,如果使用以上方法进行配置,将会覆盖默认位置。建议使用默认位置。

以上是关于全局Git忽略文件的问题出现原因以及解决方法的整理。通过设置全局的core.excludesfile配置文件,指定全局忽略文件的路径,并手动创建和填充忽略文件,可以解决Git忽略文件的问题。在配置过程中需要注意引号的使用和路径的正确性,以及不同系统和命令行环境下的差异。

0