如何过滤提交文件?

时间:2019-07-10 09:05:06

标签: git gitlab

我的项目中有2个文件夹,分别是APJ和EMEA,可以从这两个文件夹中提交文件,但是我有一种情况,我只想触发APJ文件或EMEA文件。

我尝试了仅更改选项,但没有帮助。 更改:

- DB/APJ/**/*

例如,“我的提交”包含2个文件,一个来自APJ文件夹,一个来自EMEA文件夹。我只需要APJ文件夹中的文件。如何过滤提交文件?

 Commit : abcs123
 File1 :  DB/APJ/test.sql
 File2 : DB/EMEA/test2.sql

是否可以在.yml文件中添加一些设置?预期的结果是即使我将它们一起提交,也要分别获取APJ文件和EMEA文件。

3 个答案:

答案 0 :(得分:1)

您可以通过在提交之前从特定文件夹(APJ)添加文件来实现。

git add DB/APJ
git commit -m "my changed files in APJ"

也请参阅此帖子: Commit changes only in one directory in Git

答案 1 :(得分:0)

只能提交已暂存的文件。因此,您可以通过

git add DB/APJ/
git commit -m "files in DB/APJ are changed"

此外,如果您要忽略特定文件夹中的文件,可以在gitignore中添加这些文件夹。

  1. 在项目目录中创建一个名为.gitignore的文件。 (如果您的存储库中尚不存在)
  2. 要忽略目录/文件夹,只需将directory_name / folder_name / file_name写入文件(带有斜杠):
 DB/APJ/

有关更多信息,请检查here

答案 2 :(得分:0)

git show -m -1-仅名称--pretty = format:--stat-相对

通过使用以上命令,我们可以过滤提交文件,它将仅返回文件夹特定的文件 如果我在APJ文件夹中并执行此命令,那么我将从提交中仅获取APJ文件夹文件。请注意,此提交可以包含来自APJ和EMEA文件夹的文件。希望每个人都能听懂:)