
當 .gitignore 檔案列出檔案時,我無法弄清楚在嘗試阻止 Visual Studio 2019 團隊資源管理器將檔案複製到 GitHub 時缺少什麼。
我的 .gitignore 檔案與 .git 目錄位於同一目錄中。整體而言:
# Binaries
/x64/
# VS log files
*.log
*.tlog
# Visual Studio files and folder
/.vs/
當我想要提交更改時,VS 顯示以下內容:
我願意不是想要提交 Tetris_Game.exe,也不想提交任何 .tlog 或 .log 文件,也不想提交 .vs 資料夾中的任何內容。但是,正如您所看到的,這些文件和目錄已列出以供提交。
我錯過了什麼,這必須是非常明顯的?
答案1
這是因為所有這些副檔名為 .exe、.tlog 和 .log 的檔案也會出現在您的 git 儲存庫中。因此,對這些文件的任何更改都將被肯定地追蹤。
要使 .gitignore 按預期工作,請執行以下步驟,
- 刪除本地所有要忽略的檔案。
- 然後提交並推送。現在您的儲存庫和 .gitignore 檔案處於一致狀態。
- 重啟VS並執行拉取。
- 建立您的解決方案/項目。
現在觀察您的 git 更改窗口,這些文件不應列出,儘管是在您的本機電腦中產生的。
答案2
/.vs/
和中的前導斜線/x64/
表示這些是來自檔案系統根的絕對路徑。
對於將儲存庫拉到 C: 磁碟機上任何位置的 Windows PC,您的 .gitignore 將忽略C:\.vs\
和中的檔案C:\x64\
。
刪除前導斜線並將它們保留為.vs/
和x64/
。
然後它們將被解釋為相對於 .gitignore 檔案的路徑。