Git 我如何才能摆脱卡在远程回购中的.DS_存储文件?

Git 我如何才能摆脱卡在远程回购中的.DS_存储文件?,git,macos,heroku,Git,Macos,Heroku,我已经用正确的.gitignore文件重新初始化了repo,但是远程heroku中仍然有.DS_存储文件 git pull heroku大师给出: 我怎样才能一劳永逸地删除这些文件?我想你可以把master拉下来,确保你的工作分支是干净的,然后从你的中删除.DS\u Store文件。gitignore,删除.DS\u Store文件,提交更改,将其推送到master,然后将.DS\u Store文件再次添加到您的.gitignore并提交该文件。我想您可以下拉master并确保您的工作分支是干

我已经用正确的.gitignore文件重新初始化了repo,但是远程heroku中仍然有.DS_存储文件

git pull heroku大师给出:


我怎样才能一劳永逸地删除这些文件?

我想你可以把master拉下来,确保你的工作分支是干净的,然后从你的
中删除
.DS\u Store
文件。gitignore
,删除
.DS\u Store
文件,提交更改,将其推送到master,然后将
.DS\u Store
文件再次添加到您的
.gitignore
并提交该文件。

我想您可以下拉master并确保您的工作分支是干净的,然后从
.gitignore
中删除
.DS\u Store
文件,提交更改,将其推送到master,然后将
.DS\u Store
文件再次添加到
.gitignore
并提交该文件。

看起来您已经提交了这些文件

一旦您添加并提交文件,git就会开始跟踪它们

您有两个主要选项可以忽略这些文件

  • 从存储库中删除它们(请参见下面的代码)
  • 使用``假定未更改`标志将它们标记为从上的该点开始未更改
  • 在您的情况下,您希望使用第一个选项,下面是如何使用

    .gitignore
    文件指定Git应该忽略的故意未跟踪的文件。
    Git已经跟踪的文件不受影响


    如何删除提交的文件并将git设置为忽略它们?
    您必须删除并提交,然后它们将被忽略

    # remove the commited files:
    git rm --cached .DS_Store
    
    # now add the files to the .gitignore and
    
    # commit and push
    git commit -m "Removed..."
    git push origin <branch>
    
    #删除提交的文件:
    git rm--缓存的.DS\u存储
    #现在将这些文件添加到.gitignore和
    #提交并推送
    git提交-m“已删除…”
    git推送原点
    
    看起来您已经提交了这些文件

    一旦您添加并提交文件,git就会开始跟踪它们

    您有两个主要选项可以忽略这些文件

  • 从存储库中删除它们(请参见下面的代码)
  • 使用``假定未更改`标志将它们标记为从上的该点开始未更改
  • 在您的情况下,您希望使用第一个选项,下面是如何使用

    .gitignore
    文件指定Git应该忽略的故意未跟踪的文件。
    Git已经跟踪的文件不受影响


    如何删除提交的文件并将git设置为忽略它们?
    您必须删除并提交,然后它们将被忽略

    # remove the commited files:
    git rm --cached .DS_Store
    
    # now add the files to the .gitignore and
    
    # commit and push
    git commit -m "Removed..."
    git push origin <branch>
    
    #删除提交的文件:
    git rm--缓存的.DS\u存储
    #现在将这些文件添加到.gitignore和
    #提交并推送
    git提交-m“已删除…”
    git推送原点
    
    我刚刚用-f选项按下git,效果很好。但是如果您没有删除文件,它们仍然在存储库中。该文件位于my.gitignore中,因此我认为强制在远程设备上擦除它们。否。不会的。将项目克隆到一个新目录,您将看到它。只有在您已删除、提交和强制推送的情况下,强制推送才会起作用。我刚刚用-f选项推送了git,效果很好。但如果您没有删除文件,它们仍在存储库中。该文件位于my.gitignore中,所以我认为是外力迫使他们在遥控器上被擦除的。不。不会的。将项目克隆到一个新目录,您将看到它。只有在删除、提交和强制推送后,强制才能工作