.gitignore不忽略文件夹

.gitignore不忽略文件夹,git,laravel,smf-forum,Git,Laravel,Smf Forum,我在Laravel有一个项目,我在公共目录中有一个论坛,我不想把它推到存储库中,所以我写了进去。gitignore: ### Laravel ### vendor/ node_modules/ # Laravel 5 & Lumen specific bootstrap/cache/ .env.*.php .env.php .env # SMF public/forum/ # Rocketeer PHP task runner and deployment package. htt

我在Laravel有一个项目,我在公共目录中有一个论坛,我不想把它推到存储库中,所以我写了进去。gitignore:

### Laravel ###
vendor/
node_modules/

# Laravel 5 & Lumen specific
bootstrap/cache/
.env.*.php
.env.php
.env

# SMF
public/forum/

# Rocketeer PHP task runner and deployment package. https://github.com/rocketeers/rocketeer
.rocketeer/
但是,条目仍然显示在Git状态下 这是我的树:
+…
+公共
++论坛
+++…
+…
问题在哪里

目录结构

Git状态

问题在于此文件夹已在您的索引中(您在较早的时候提交了它)。对索引中文件的更改将始终处于“git状态”。只有该文件夹中的新文件将被忽略

去修理它。请看我的答案
In.gitignore添加

public/forum


执行以下操作以触发gitignore:

  • 在要修复的存储库中提交所有挂起的更改并将其推送

  • 删除git索引中的所有内容以刷新git存储库。这是安全的。使用此命令:

    git rm -r --cached .
    
    git add .
    
    git commit -m "Gitignore issue fixed"
    
  • 将所有内容重新添加到回购协议中,可以使用以下命令:

    git rm -r --cached .
    
    git add .
    
    git commit -m "Gitignore issue fixed"
    
  • 使用以下命令提交这些更改:

    git rm -r --cached .
    
    git add .
    
    git commit -m "Gitignore issue fixed"
    

  • 你能告诉我们目录结构吗?我怀疑有路径问题。显示
    git status
    的输出(相关部分)。(如果你想知道的话,除了其他路径之外,其他所有路径都是相关的。)一般的解决方案是将
    *
    添加到
    public/forum
    @KishorPawar-我添加了screensys,这是正确的。如果你想从git中删除文件,但实际上在本地保留文件,你可以使用
    git rm--cached-r path/to/folder
    ,--cached标志将从git的知识中删除它,但实际上保留该文件。使用此方法的唯一一点是,虽然它将文件保存在本地,但它会将其从任何其他拉动远程更改的系统中删除。