git取消對檔案的跟蹤的兩種命令的差異

2021-09-28 11:49:00 字數 901 閱讀 8406

當我們但用git的時候,有時候發現本地的有些檔案不想再進行跟蹤了

但是我們以前已經提交過了這個檔案,怎麼能讓git 取消跟蹤了, 

git 命令提供了兩種解決方案,都可以達到目的,但是效果上還是有些細微差別的

先說第一種

假設我以前跟蹤了框架檔案中的  vendor 目錄,但是現在我不想再跟蹤它了,因這它完全可以使用 composer install來自動安裝

命令如下

git rm -r --cached vendor               //這個命令是保留本地的 vendor 目錄,刪除對應遠端分支的 vendor 目錄

git commit

git push

這裡刪除了之後,記得在 .ingrone 的忽略檔案中加入  vendor的目錄,以後提交就不會有 vendor的事了

以上命令的特點是 本地的 vendor目錄是保留著的  但遠端分支上的被刪除掉了

如果 別人 git clone 這個遠端的分支是沒有  vendor這個目錄的

第二種方法

git update-index –assume-unchanged file_path 

- file_path 絕對路徑 

執行取消追蹤命令, 帶來效果: 

1. 本地的當前分支取消了追蹤 

2. 本文檔案不刪除, 遠端倉庫仍是存在此檔案。 

3. 本次clone的所有分支都不追蹤此檔案。 

4. 重新git clone後此檔案仍是會被追蹤。 

5. 若想徹底取消並刪除追蹤檔案 

git rm file_path

二. 重新跟蹤某個檔案

git update-index –no-assume-unchanged file_path 

- file_path絕對路徑

git 移除檔案 取消對檔案的跟蹤

要從 git 中移除某個檔案,就必須要從已跟蹤檔案清單中移除 確切地說,是從暫存區域移除 然後提交。可以用git rm命令完成此項工作,並連帶從工作目錄中刪除指定的檔案,這樣以後就不會出現在未跟蹤檔案清單中了。如果只是簡單地從工作目錄中手工刪除檔案,執行git status時就會在 changes ...

git 移除檔案以及取消對檔案的跟蹤

要從 git 中移除某個檔案,就必須要從已跟蹤檔案清單中移除 確切地說,是從暫存區域移除 然後提交。可以用git rm命令完成此項工作,並連帶從工作目錄中刪除指定的檔案,這樣以後就不會出現在未跟蹤檔案清單中了。如果只是簡單地從工作目錄中手工刪除檔案,執行git status時就會在 changes ...

git取消跟蹤已版本控制的檔案

git 不再追蹤檔案改動 git update index assume unchanged filepathgit 恢復追蹤檔案改動 git update index no assume unchanged filepathgit 刪除被管理的檔案 不會刪除本地檔案git rm cached fi...