在 Xcode 中,我錯誤地點擊了Convert to use Test Plans按鈕,Git 顯示.xcscheme檔案已被更改:
On branch TestBranch
Untracked files:
(use "git add <file>..." to include in what will be committed)
MyProject.xcodeproj/xcshareddata/xcschemes/MyProject-UI-Tests.xcscheme
nothing added to commit but untracked files present (use "git add" to track)
我想回滾更改,但檔案未跟蹤,所以沒有什么可以回滾的。
我嘗試將 HEAD 重置回最后一次良好的提交,但這個更改仍然存在(這是可以理解的,因為 Git 沒有跟蹤它)。
我有前一天專案的備份副本,所以我能夠.xcscheme手動恢復檔案,這將 Xcode 的狀態恢復到單擊Convert to use Test Plans按鈕之前的狀態,這很好。
但是,現在 Git 知道該檔案已更改,它會一直警告我,即使在我將其恢復到原始狀態之后也是如此。
簡單的解決方法是將.xcscheme名稱添加到.gitignore檔案中。但是,我不希望 Git 將來忽略該檔案,以防由于某種原因再次發生這種情況(即,我喜歡 Git 告訴我哪個檔案已更改,所以我知道要手動回滾哪個檔案來修復它)。
下一個最好的簡單修復方法是將.xcscheme檔案添加到 Git 以便對其進行跟蹤,但我的隊友要求我不要包含此檔案,因為他們不希望它被跟蹤。
所以,問題是這樣的:是否有可能讓 Git 忘記.xcscheme 到目前為止的更改,但如果將來發生更改,仍然會提醒我?
uj5u.com熱心網友回復:
但是,現在 Git 知道該檔案已更改,它會一直警告我,即使在我將其恢復到原始狀態之后也是如此。
恢復后 Git 不應再“警告您”(關于未跟蹤的檔案)。
顯示MyProject-UI-Tests.xcscheme在未跟蹤的部分git status并不意味著它已經改變,只是它是未跟蹤的。
Git 不能忘記它不跟蹤的變化。
只有將該檔案與原始副本(您知道具有正確內容的備份)進行比較的外部程序才能提醒您任何更改。
OP James Toomey在評論中證實:
我錯了,這個檔案一直在那里。
有多個
.xcscheme檔案,但 UI-Tests 僅在我單擊該按鈕后出現。
所以,該檔案出現在 Git 的“untracked files”部分的原因是因為這是一個以前從未存在過的新檔案,所以 Git 基本上是在說,“如何處理這個新檔案,你想要
a) 開始跟蹤它(用git add),或者
b)忽略它(通過將它添加到“.gitignore”)?
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/515216.html
標籤:代码混帐
