如何排除Git中的文件和目录?
How to exclude files and directories in Git?
我正在使用 Git 版本 2.11.0,但我不知道如何完全忽略我项目中的某些文件和目录。
在我的项目中,我有一个 /vendor 目录,里面有 if 文件和其他目录:
/vendor
/vendor/autolofile.php
/bin
/composer
/container-interop
/Demo
/psr
/zendframework
/zfcampus
现在,我已经忽略了所有 /vendor 目录及其文件和子目录。但我想排除文件 "autoload.php" 和此目录结构内的所有文件:
/vendor/Demo/library/BBDD
/vendor/Demo/library/Data
/vendor/Demo/library/File
现在,我试图只查看 /vendor/Demo/library/BBDD 中的所有文件的状态,但我没有得到我想要的。我从 git status
命令中得到了这个出口:
我的 .ignore 文件中的内容是:
.vagrant/
vendor/*
!vendor/Demo
!vendor/Demo/library
!vendor/Demo/library/BBDD
!vendor/Demo/library/BBDD/*
config/development.config.php
data/cache/*
!data/cache/.gitkeep
phpunit.xml
ubuntu-xenial-16.04-cloudimg-console.log
我做错了什么?我想在状态中查看 /vendor/Demo/library/BBDD、/vendor/Demo/library/Data 和 /vendor/Demo/library/File 中的所有文件以及 /vendor/autoload.php
中的文件
您还需要添加 !vendor/autoload.php
文件。另外,我建议您这次在 vendor 文件夹中创建另一个 .gitignore
文件,并放入以下内容:
*.*
!autoload.php
!Demo
虽然您已经从 .gitignore
模式中排除了这些文件,您仍然需要告诉 Git 通过 运行 git add vendor
来跟踪它们。然后它会开始向您显示这些文件中的差异。
我正在使用 Git 版本 2.11.0,但我不知道如何完全忽略我项目中的某些文件和目录。
在我的项目中,我有一个 /vendor 目录,里面有 if 文件和其他目录:
/vendor
/vendor/autolofile.php
/bin
/composer
/container-interop
/Demo
/psr
/zendframework
/zfcampus
现在,我已经忽略了所有 /vendor 目录及其文件和子目录。但我想排除文件 "autoload.php" 和此目录结构内的所有文件:
/vendor/Demo/library/BBDD
/vendor/Demo/library/Data
/vendor/Demo/library/File
现在,我试图只查看 /vendor/Demo/library/BBDD 中的所有文件的状态,但我没有得到我想要的。我从 git status
命令中得到了这个出口:
我的 .ignore 文件中的内容是:
.vagrant/
vendor/*
!vendor/Demo
!vendor/Demo/library
!vendor/Demo/library/BBDD
!vendor/Demo/library/BBDD/*
config/development.config.php
data/cache/*
!data/cache/.gitkeep
phpunit.xml
ubuntu-xenial-16.04-cloudimg-console.log
我做错了什么?我想在状态中查看 /vendor/Demo/library/BBDD、/vendor/Demo/library/Data 和 /vendor/Demo/library/File 中的所有文件以及 /vendor/autoload.php
中的文件您还需要添加 !vendor/autoload.php
文件。另外,我建议您这次在 vendor 文件夹中创建另一个 .gitignore
文件,并放入以下内容:
*.*
!autoload.php
!Demo
虽然您已经从 .gitignore
模式中排除了这些文件,您仍然需要告诉 Git 通过 运行 git add vendor
来跟踪它们。然后它会开始向您显示这些文件中的差异。