【问题标题】:Git add files which do not match a patternGit 添加与模式不匹配的文件
【发布时间】:2019-09-22 10:28:22
【问题描述】:

在 Git 中,在将文件添加到提交时,我们可以添加所有匹配模式的文件,如下所示:

git add **Component**

我发现此功能对于快速添加大量具有相似名称的文件非常有用。

例如,如果我的所有文件都是基于组件命名的,那么我可以快速将我所做的所有更改添加到组件中。

同样,在 git 中有没有办法将所有文件添加到提交 排除 匹配模式的文件?

类似:

git add *.java --exclude **Component1**

这样我就可以更改我的所有 java 文件,除了我对 component1 的文件所做的更改?

【问题讨论】:

  • 这听起来更像是用 bash 调用 xargs 来解决的问题。类似blah blah | produce list of files | xargs git add
  • 听起来像是要找的工作。 Bash 可能有一个不匹配的 glob; zsh 几乎可以肯定

标签: git git-commit git-add


【解决方案1】:

试一试

git add *.java ':(exclude):**Component1**'
git add *.java ':!**Component1**'

任何以冒号开头的路径规范都是magic pathspecexclude 就是其中之一。

【讨论】:

  • 谢谢!这对我有用:git add *.java ':!**Component1**'
猜你喜欢
  • 2016-08-24
  • 1970-01-01
  • 2012-01-21
  • 1970-01-01
  • 2011-01-14
  • 1970-01-01
  • 2012-08-16
  • 2013-10-19
  • 1970-01-01
相关资源
最近更新 更多