【问题标题】:Make .gitignore ignore everything except one file使 .gitignore 忽略除一个文件之外的所有内容
【发布时间】:2015-11-04 10:58:36
【问题描述】:

我对整个 .gitignore 还是很陌生,所以我希望有人能帮我解决这个问题。

我们正在使用 Xamarin 进行开发,我们希望忽略 packages/ 文件夹,但放置在不同(子)目录中的一个文件除外。

我想保留以下文件:

/packages/SQLitePCL.raw_basic.0.8.2/build/Xamarin.iOS10/SQLitePCL.raw_basic.targets

但我想删除 /packages/ 中的所有其他文件夹和文件。

我尝试了类似的方法:

packages/
!packages/SQLitePCL.raw_basic.0.8.2/build/Xamarin.iOS10/SQLitePCL.raw_basic.targets

但我不认为这是要走的路。

【问题讨论】:

    标签: git gitignore


    【解决方案1】:

    我认为您的.gitignore 文件是正确的。

    但我认为您必须先删除遥控器中的packages,然后才能通过命令将packages 添加到您的.gitignore 文件中:

    git rm --cached packages
    git push origin master
    

    并确保.gitignorepackages 位于同一父目录

    以更好的方式,我认为您应该创建一个位于packages.gitignore,其内容为:

    *
    !SQLitePCL.raw_basic.0.8.2/build/Xamarin.iOS10/SQLitePCL.raw_basic.targets
    !.gitignore
    

    【讨论】:

    • git rm --cached packages 给我:致命:pathspec 'packages' 不匹配任何文件
    • 尝试将.gitignore文件推入packages目录的方式
    • 也这样做了.. 不幸地发生了同样的问题
    猜你喜欢
    • 1970-01-01
    • 2010-11-02
    • 2021-10-26
    • 1970-01-01
    • 1970-01-01
    • 2018-09-17
    • 1970-01-01
    • 2016-02-05
    • 1970-01-01
    相关资源
    最近更新 更多