簡體   English   中英

禮儀:如何在不污染上游存儲庫的情況下版本控制編輯器配置

[英]Etiquette: How to version control editor configuration without polluting upstream repository

在為 GitHub 項目做貢獻時,我不想發布我的個人編輯器 (VSCode) 設置,但我仍然想以某種方式跟蹤它們。

示例:Visual Studio Code 將其配置放在.vscode目錄中。 如果我忽略它(即在我的全局.gitignore ),我將無法保存這些設置以供以后使用。 如果保留它,它會出現在我創建的任何 PR 中。

我的叉子上的一個單獨的分支看起來很尷尬。 Stashes 不會推送到 GitHub。

有些設置是項目和開發人員獨有的(在此處插入維恩圖)。 我怎樣才能追蹤他們? 我已經搜索過 SO 和其他地方,但找不到現有的答案。

正如您正確提到的,一旦您提交文件,它將開始被跟蹤
為了忽略.vscode文件夾使用assume-unchanged


您仍然可以忽略帶有assume-unchanged標志的添加文件

--[no-]assume-unchanged

指定此標志時,不會更新為路徑記錄的對象名稱。
相反,此選項設置/取消設置路徑的“假設不變”位。

assume unchanged位打開時,用戶承諾不更改文件並允許 Git 假設工作樹文件與索引中記錄的內容相匹配。

如果要更改工作樹文件,則需要取消設置該位以告訴 Git。

如果 Git 需要修改索引中的此文件,例如在合並提交時,Git 將失敗(優雅地); 因此,如果假定未跟蹤的文件在上游發生更改,您將需要手動處理這種情況。


解釋如何從命令行執行

# Remove the file from the repository if you have committed it already
# and you don't want to keep it
git rm --cached .vscode/

# now update your gitignore file to ignore this folder
echo '.vscode' >> .gitignore

# add the .gitignore file
git add .vscode

# ... git commit and push

從這一點開始,git跟蹤對此文件夾的更改,因此現在您必須“打開”假設不變,因此 git 將不會檢測到您的本地更改。

  • 您可以隨時關閉它並在需要時添加更改

    在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM