git 忽略檔案的幾種方式以及應用場景
- .gitignore檔案配置
最常用的忽略設定, 可以設定整個專案要忽略的資料夾, 對於已經在track的檔案, 需要先移除track, 具體操作網上很多. 這種方式常用語忽略第三方庫, 臨時檔案和配置檔案, 關於配置檔案設定, 在網上找到一個不錯的辦法
引自:https://segmentfault.com/q/1010000000430426
對於充當模版的檔案,在檔名上加以區分然後用 Git 記住。比如說實際的配置檔案應該叫 database.conf,在寫好模版之後可以更名為 database.conf.example。Git 記錄 database.conf.example 但是忽略 database.conf。
每一個人克隆下來之後,複製一份 database.conf.example 為 database.conf 然後修改後者以符合本地的要求。由於後者是在 .gitignore 裡的,所以不會被記錄,也完全不需要 update-index。
- exclude檔案配置
這個檔案在 .git/info/exclude 和 .gitignore檔案的配置方式相同, 不同點在於exclude中的配置不會影響其他人, 這個東西做了下實驗, 發現沒有效果, 可能是我姿勢不對, 目前也沒想到應用場景 - git update-index --assume-unchanged PATH
在PATH處輸入要忽略改動的檔案, 例如:git update-index --assume-unchanged logs/*.log
將會忽略logs資料夾下的所有log字尾的檔案改動, 注意, 這個忽略並非是不記錄, 而是讓git假裝目標檔案沒有改變, 關於這個檔案的正確用法:
引自:https://segmentfault.com/q/1010000000430426
應用了該標識之後,Git 停止檢視工作區檔案可能發生的改變,所以你必須 手動 重置該標識以便 Git 知道你想要恢復對檔案改變的追蹤。當你工作在一個大型專案中,這在檔案系統的 lstat 系統呼叫非常遲鈍的時候會很有用。
- 你正在修改一個巨大的檔案,你先對其 git update-index --assume-unchanged,這樣 Git 暫時不會理睬你對檔案做的修改;
- 當你的工作告一段落決定可以提交的時候,重置改標識:git update-index --no-assume-unchanged,於是 Git 只需要做一次更新,這是完全可以接受的了;
- 提交+推送。
- git update-index --skip-worktree PATH
https://www.zhihu.com/question/25234996
--assume-unchanged 假定開發人員不會更改檔案。此標記旨在為無變化資料夾(如 SDK)改善效能。
--skip-worktree 用於命 GIT 不再染指特定檔案——即便開發人員可能更改它——的情形。例如,如果主原始碼庫上游承載某些即將投入生產的配置檔案而你不希望意外的提交影響到那些檔案,--skip-worktree 正是你的菜。
相關資料
git忽略已經被提交的檔案 評論有很多幹貨
git 中的 assume-unchanged 與 skip-worktree 的區別是什麼?
https://segmentfault.com/q/1010000004164349?_ea=513032
相關文章
- Git忽略檔案.gitignore的使用Git
- 檔案上傳的幾種方式
- spring事務失效的幾種場景以及原因Spring
- JavaScript~檔案下載的幾種方式JavaScript
- php讀取檔案的幾種方式PHP
- Git 忽略已經提交的檔案Git
- git 忽略已提交過的檔案Git
- 一文搞懂,這幾種 API 的不同應用場景API
- PG獲取檔案大小的幾種方式
- Git 小技巧:忽略某些檔案的更改Git
- Git中.gitignore檔案不起作用的解決以及Git中的忽略規則介紹Git
- 沉浸式空間場景的使用有哪幾種方式?
- git 入門教程之忽略檔案Git
- Redis詳解以及Redis的應用場景Redis
- 幾種windows到linux上傳檔案的方式WindowsLinux
- Spring Boot讀取配置檔案的幾種方式Spring Boot
- 變更資料捕獲CDC幾種應用場景 - RTInsights
- Git命令git update-index --assume-unchanged,忽略不想提交的檔案(忽略跟蹤)GitIndex
- Pytest的斷言方式及應用場景
- go的 & 和 * 的區別,以及應用場景Go
- API介面的運用場景以及獲取方式API
- Redis最常見的5種應用場景Redis
- 【詳細】關於Android上傳檔案的幾種方式Android
- 忽略某些檔案 —— Git 學習筆記 05Git筆記
- 『現學現忘』Git基礎 — 19、Git中忽略檔案Git
- 【git】透過 .gitignore 檔案來忽略特定的目錄Git
- git工作常用命令列應用場景Git命令列
- Node.js 優缺點以及應用場景Node.js
- spring-boot-route(二)讀取配置檔案的幾種方式Springboot
- tsv檔案在大資料技術棧裡的應用場景大資料
- RabbitMQ的應用場景以及基本原理介紹MQ
- RabbitMQ 的應用場景以及基本原理介紹MQ
- 基於 ABAP Fundamental Library 應用支援的幾種 Connectivity 方式
- SAP 實施專案中涉及到程式設計方式操作 Excel 的幾種場景介紹程式設計Excel
- git前端上傳專案忽略本地node_modules檔案Git前端
- 各種分散式事務的實現方式適用的場景分散式
- 事物系統的幾種異常場景
- 精進 Spring Boot 03:Spring Boot 的配置檔案和配置管理,以及用三種方式讀取配置檔案Spring Boot