【问题标题】:Untrack all files on git取消跟踪 git 上的所有文件
【发布时间】:2013-06-13 00:36:03
【问题描述】:

在从 C9 迁移到通过 SSH 托管在我的 Macbook 上的过程中,我不得不重新下载 Kohana 并更改其他一些东西才能让我的网站正常运行;我不希望那些被承诺。有没有办法取消跟踪所有跟踪的文件,以便只提交未来的更改?或者还有什么我应该做的吗?

我在 Macbook 上运行 Mountain Lion,并打开了 Apache 和 PHP。

【问题讨论】:

  • 你所说的“untrack”到底是什么意思?
  • @mvp 好吧,当我执行got status 时,我会得到一个未暂存文件和未跟踪文件的列表。我得到了一百万个未上演的,我想一次性让它们都没有被跟踪。

标签: macos git osx-mountain-lion


【解决方案1】:

我不确定您所说的“取消跟踪所有跟踪的文件,以便只提交未来的更改”是什么意思。因为您需要跟踪文件以便提交它们。

如果您只想不跟踪 Kohana 和其他下载,那么只需使用 git rm --cached <file> 将它们从您的工作目录中删除,或者最好创建一个 .gitignore 文件。

stackoverflow 上有很多有用的帖子可以帮助您为项目创建 .gitignore 文件。通过使用它,您可以轻松排除整个文件夹。

对于 Mac,如果您可以将隐藏文件视为 .文件被隐藏。此页面向您展示如何查看 Mountain Loin 上的隐藏文件 - http://www.mikesel.info/show-hidden-files-mac-os-x-10-7-lion/

【讨论】:

    【解决方案2】:

    git rm --cached File

    将删除索引中的文件,因此将不再跟踪它,但不会物理删除它。这将只为当前分支取消跟踪文件

    [或]

    使用这个 git 命令。完成此操作后,git 会停止检查文件是否有可能的修改。

    git update-index --assume-unchanged  <filename>
    

    您可以随时通过设置--no-assume-unchaged标志再次跟踪

    git update-index --no-assume-unchanged  <filename>
    

    但是这些命令不会影响远程仓库。

    【讨论】:

    • 我需要取消跟踪项目中的所有文件并再次跟踪它们。所以我使用了'git rm --cached -r'。 (不要忘记最后的点(.))
    【解决方案3】:

    更简单:

    cd /root/directory/of/your/local/repo
    git rm --cached -r .
                      ^^^
                   (space - dot)
    

    甚至更简单:

    git clone url/for/Kohana /different/local/path
    

    【讨论】:

    • @VictorR.Oliveira 同意。我已经编辑了答案以强调命令的那一部分。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-04-24
    • 2017-10-04
    • 1970-01-01
    • 2015-12-25
    • 2016-01-01
    • 2021-02-04
    • 1970-01-01
    相关资源
    最近更新 更多