1

我正在尝试通过 Jenkins 和来自 Git 存储库并包含 .git 文件夹的 uDeploy 插件导入新版本的 udeploy 组件。我试图从同步中排除 .git 文件夹的所有内容都不起作用。我认为该插件正在寻找具有 .git 扩展名而不是文件夹的文件。如何排除 .git 文件夹表单同步?

我尝试了“.git”、**/.git/、*.git/*、**.git/* 和一些其他“术语”,它们都在控制台输出中显示为:

Working Directory: C:\Program Files (x86)\Jenkins\jobs\DIT Com\workspace Includes: **/ Excludes: ".git" Uploading files in C:\Program Files (x86)\Jenkins\jobs\DIT Com\workspace Uploading: .git/hooks/pre-commit.sample ... Uploading: .git/refs/heads Files committed Finished: SUCCESS

这是排除部分的样子,点击了帮助气泡(这就是灰色框中的内容) 在此处输入图像描述

4

3 回答 3

2

无法发表评论,因此添加为答案-


与完整路径名匹配的模式中的两个连续星号(“**”)可能具有特殊含义:

前导“ **”后跟斜杠表示在所有目录中都匹配。例如,“ **/foo”在任何地方匹配文件或目录“foo”,与模式“foo”相同。"**/foo/bar" 匹配文件或目录 "bar" 直接位于目录 "foo" 下的任何位置。

尾随的 " /**" 匹配里面的所有内容。例如,“ abc/**”匹配目录“abc”内的所有文件,相对于 .gitignore 文件的位置,具有无限深度。

斜杠后跟两个连续的星号,然后斜杠匹配零个或多个目录。例如,“ a/**/b”匹配“a/b”、“a/x/b”、“a/x/y/b”等。

其他连续的星号被认为是无效的。

于 2014-12-16T21:25:01.647 回答
1

你试过正则表达式吗?说,^/.*/.git/

于 2014-12-16T18:55:56.357 回答
1

看起来排除目录的答案是**/dir_name/**的形式。

如果有人可以提供有关前导 * 正在做什么的更多信息(不确定第二个 * 通配符如何交互,也不知道尾随的第二个 *),我真的很想了解它为什么起作用!

参考:ant文件集目录排除某些目录

于 2014-12-16T19:18:56.480 回答