草庐IT

GitIgnore

全部标签

git - Sourcetree 中的 .gitignore 文件不起作用

我正在处理一个Maven项目,我想忽略在我的项目(评估)根文件夹的/target文件夹中生成和存储的文件。在我的git存储库的根目录中,我有一个.gitignore文件,其中包含以下内容条目(后端只是一个包含eclipse项目评估的文件夹)backend/Evaluation/logs/backend/Evaluation/target/出于某种原因,SourceTree不会忽略存储在这两个文件夹中的文件,当我编译我的项目时,有一些未提交的更改,这些更改是/target文件夹中的一些.class文件。为什么会这样?我还尝试将.gitignore条目更改为/backend/Evaluat

git:每个 Remote 都有不同的 .gitignore 文件

我有一个远程仓库,我想在其中提交某些文件(编译后的文件以将它们部署到云计算平台上),但我不想将它们部署到github上...有什么方法可以让不同的.gitignore文件,每个Remote一个? 最佳答案 这在git的模型中并没有真正意义。提交包含文件集;所有.gitignore文件所做的就是告诉UI不要自动添加匹配特定模式的文件。这实际上意味着拥有几乎相同的并行提交集,但仅包含文件的一个子集。可以使用分支方案来执行此操作,其中您有一个“部署”分支,它从master中分离出来并且相同但包含额外的编译文件。这甚至可以通过githook

git - 将 .gitignore 添加到 Repo 的最佳实践

关于Git的.gitignore文件的最佳实践是什么?它应该从存储库中排除还是包含?如果是有条件的,每种情况的条件是什么? 最佳答案 它们应该几乎总是包含在内,因为它们的目的是忽略“输出”文件(编译的二进制文件、日志文件),这些文件将由任何使用您的项目克隆的人生成。它们应受版本控制并包含在存储库中。您不应该在存储库中使用.gitignore文件来忽略只为您显示的文件,例如特定于编辑器的交换文件。您应该将这些规则放在global.gitignorefile中以便它们适用于所有存储库,或在.git/info/excludes中。

git - 是否可以忽略子目录中的 .gitignore 规则?

我想忽略子目录中的所有.gitignore规则,除了根目录中的.gitignore规则。例如:我已经在目录结构/a中有.gitignore文件。/a/b中还有.gitignore文件。假设/a有a.txt和b.txt文件。/a/b有.config文件。.gitignore在/a/b中定义了.config。.config文件将被/a/b中的.gitignore忽略。但我真的想通过忽略子目录中.gitignore的规则来跟踪.config文件。这可能吗? 最佳答案 你的问题不太清楚,但如果有一些子目录你想要不同的gitignore规则,

git - 您是忽略 .gitignore 中的 git 子模块还是将其提交到您的存储库?

我在project_dir/vendor/submodule_one中的项目中添加了一个子模块,现在每次运行gitstatus时,我都会得到modified:vendor/submodule_one(新提交)。我的问题是处理此问题的最佳方法是什么?我是否将vendor/submodule_one文件夹添加到我的.gitignore中,因为我的主项目不需要了解我的子模块的细节?或者当我对我的子模块进行更改和提交更改时,我是否也需要在我的主项目中进行提交?刚开始使用子模块,除了设置它们之外似乎找不到太多信息。 最佳答案 不,您不需要将您

git - 否定模式如何在 .gitignore 中工作?

我正在尝试使用具有否定模式(以!开头的行)的.gitignore文件,但它没有按我预期的方式工作。作为一个最小的例子,我有以下目录结构:C:/gittest--.gitignore--aaa/--bbb/--file.txt--ccc/--otherfile.txt在我的gitignore文件中,我有这个:aaa/!aaa/ccc/我的理解(基于​​thisdocpage)是文件aaa/ccc/otherfile.txt不应该被忽略,但实际上git忽略了aaa下的所有内容。我是否误解了这句话:“一个可选的前缀!它否定了模式;任何被先前模式排除的匹配文件都将再次包含在内。”?顺便说一句,

git - 将新创建的特定文件夹添加到 Git 中的 .gitignore

我有一个干净的工作目录,昨晚从Git存储库中克隆了一个。但是现在我的本地服务器创建并包含一个我想忽略的统计文件夹。当我运行gitstatus时,我似乎无法让Git忽略这个文件夹。OnbranchmasterYourbranchisaheadof'origin/master'by1commit.Changestobecommitted:(use"gitresetHEAD..."tounstage)newfile:app_public/views/pages/privacy.phpnewfile:app_public/views/pages/terms.phpnewfile:public_

windows - 当我在 Windows 上创建 .gitignore 文件时抛出 "You must type a file name"错误

当我尝试这样做时,出现以下错误:显然,Windows资源管理器不允许我创建这种类型的文件模式。我该如何克服这个问题? 最佳答案 在文件资源管理器中,诀窍是调用您的文件.gitignore.它将删除结尾的.一个奇怪的行为,但是,嘿!,它有效?或者从文本编辑器创建它... 关于windows-当我在Windows上创建.gitignore文件时抛出"Youmusttypeafilename"错误,我们在StackOverflow上找到一个类似的问题: https:

git - .gitignore 语法 : bin vs bin/vs. bin/* 与 bin/**

bin、bin/、bin/*和bin/**有什么区别我的.gitignore文件?我一直在使用bin/,但正在查看other.gitignorefiles(在eclipsefile中,双星和单星甚至像这样一起使用:tmp/**/*这是怎么回事?)我看到前两种模式也被广泛使用.有人可以解释一下这三者之间的区别吗? 最佳答案 bin匹配任何名为“bin”的文件或目录。bin/匹配任何名为“bin”的目录,这实际上意味着它的所有内容,因为Git不单独跟踪目录。bin/*直接匹配任何bin/中的所有文件和目录。这可以防止Git自动在其子目录

git - .gitignore NuGet 排除包/包含包/repositories.config

我正在尝试为使用NuGet的VisualStudio项目创建.gitignore。目前包含:\packages/*!packages/repositories.config这不会忽略文件夹中的任何内容。一切都在添加上演。我也试过:packages/!packages/repositories.config这会忽略packages文件夹中的所有内容,并且不包括packages/repositories.config。我做错了什么? 最佳答案 /packages/!packages/repositories.config你也可以在包文件