我知道這裏有很多問題,但沒有解決方案爲我工作。這是發生了什麼:如何恢復從git提交更改?
我試圖在我的應用程序中添加一個新功能,所以我創建了一個新的分支來實現此功能。
我完成後,我將它合併到master,刪除了我測試新功能的分支,並將更改推送到存儲庫(bitbucket btw)。代碼是正常的
。
然後我需要添加其他功能壽。
然後我再次創建了一個新分支,但現在我在master中測試了這個其他新功能,並讓其他分支使用「正確」代碼。
新功能沒有工作,所以我試圖去其他分支併合併到主,刪除我所做的更改,它給了我一個合併衝突壽,我嘗試了一切,但我只是沒有'能夠做到這一點。
我切換回主,並刪除與正確的代碼分支。
我在主人的錯誤代碼。
我還沒有推動變化,只提交,所以我試圖尋找如何解決這個問題,沒有工作。
我然後跑這個命令:git checkout NUMBER OF THE COMMIT
我檢查了最後推提交,其中有正確的代碼。
我的項目更改爲正確的代碼,我認爲一切正常,我認爲它恢復了更改。
我跑git status
,那就是輸出:
HEAD detached at f49fb28
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: .DS_Store
modified: Homework.xcworkspace/xcuserdata/Henrique.xcuserdatad/UserInterfaceState.xcuserstate
no changes added to commit (use "git add" and/or "git commit -a")
我然後跑git add -A
與git commit -m "some message"
一起和它推到了回購思維,代碼會得到固定在那裏。它沒有壽,現在我的回購和項目有相同的代碼,錯誤的代碼。是否有可能我使用RIGHT特性檢出了提交,而不是錯誤的提交,並且我的代碼恢復爲完全提交?如果沒有,我唯一的救贖就是重做一切。
請幫助我!
編輯:我跑git status
輸出功率爲現在不同了:
HEAD detached from f49fb28
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: Homework.xcworkspace/xcuserdata/Henrique.xcuserdatad/UserInterfaceState.xcuserstate
no changes added to commit (use "git add" and/or "git commit -a")