回答
一個存儲是一個提交(或者真的,兩個甚至有時三個提交),你不能改變提交。那麼對你的問題的文字回答就是「你不能」。幸運的是,你不需要來。
你說你不能申請你的藏品,因爲有衝突的文件。但你可以適用它,你只是得到一個合併衝突。你所需要做的就是解決合併衝突。
假設這個衝突在文件README.txt
中,所以有必要寫一下這裏。
如果你想保持對分支版本來解決它,應用藏匿,然後檢查出的分支版本來解決衝突:
git stash apply
git checkout --ours -- README.txt # or git checkout HEAD -- README.txt
如果你想保持在 - 藏匿版本,提取一個:
git checkout --theirs -- README.txt # or git checkout stash -- README.txt
或者,使用任何舊合併解決工具(我只使用文本編輯器),然後「混帳添加」的結果。
一旦你完成了所有的存儲,git stash drop
將「忘記」構成存儲的提交。 (不這樣做,直到你確定你用它做,它是很難拿回來之後。)
我的錯誤是,由於涉及權限和鎖定文件的特定於Windows的錯誤,sourcetree不讓我應用存儲。但是這回答了我的問題。 – Houseman
當嘗試'git stash apply'時,由於衝突我得到一個錯誤:'錯誤:您對本地文件的更改將被合併覆蓋:' – BergQuester
@BergQuester:在這種特殊情況下,您正在嘗試'git當您在工作樹中已經存在某些更改時,「隱藏應用」。通常情況下,即使這樣也行,所以我不完全確定發生了什麼(我需要在'apply'之前看到'git status'輸出,以及你給'git stash apply'的標誌)。一般來說,處理這種情況的方法是提交或隱藏* current *變化,然後使用'git stash branch'將以前的隱藏轉換爲新的分支,然後使用全套的Git工具你藏起來的是安全地存儲爲分支。 – torek
有這種情況的解決方法:
您的藏匿處保存爲補丁文件:
$ git stash show -p > stash.patch
應用此修補程序,跳過沖突(你會被要求解決衝突,就跳過丟失的文件):
$ patch -p1 < stash.patch
事後不要忘記清理stash.patch
!
直截了當的解決方案 – bytefire
從您的本地代碼庫中刪除所需的文件,然後將其推送存儲。所做的更改將得到反映,您的文件將從存儲中刪除。
- 1. git - 從存儲庫中刪除文件
- 2. 如何從Git存儲庫中刪除「排除的」文件?
- 3. 如何從ditwich從git存儲庫中刪除文件?
- 4. 從git緩存中刪除文件
- 5. 從存儲庫中刪除git corrupt blob
- 6. Git:從存儲庫中刪除憑證
- 7. 意外從Git存儲庫中刪除
- 8. Git從存儲庫中刪除* .sln.docstates
- 9. 無法從git存儲庫中刪除文件?
- 10. 如何從git存儲庫中刪除或忽略.rb〜文件?
- 11. 如何讓git從存儲庫中刪除文件
- 12. git - 無法從存儲庫中永久刪除文件
- 13. 是否可以從git存儲中刪除單個文件?
- 14. 明確從git存儲庫中刪除文件
- 15. 如何從git存儲庫中刪除* ALL *文件和目錄?
- 16. 如何從git存儲庫中完全刪除文件?
- 17. git從上游(github)存儲庫中刪除文件
- 18. git從存儲庫中刪除文件和舊提交
- 19. 如何從git裸遠程存儲庫中刪除文件?
- 20. 從git存儲庫中刪除文件而不克隆它
- 21. 如何使用Windows Tortoise從Git存儲庫中刪除文件?
- 22. 從git中刪除文件
- 23. 如何從存儲中刪除文件
- 24. 從存儲庫中刪除Thumbs.db文件
- 25. 從存儲桶中刪除文件
- 26. 如何在不刪除Git歷史記錄的情況下從git存儲庫中刪除文件/文件夾
- 27. JGit刪除git存儲庫
- 28. 從git存儲庫中恢復已刪除的文件或文件夾
- 29. 如何從git添加索引中刪除文件,而無需從任何存儲庫本地刪除文件
- 30. Git - 從.git文件夾中刪除文件,而無需遠程刪除文件
這可以幫助你http://stackoverflow.com/questions/1105253/how-would-i-extract-a-single-file-or-changes-to-a-file-from-a-git-stash –
@TimCastelijns所以,從這個答案,'$ git checkout stash @ {0} -'會是我想要的命令嗎? –
Houseman