我在我的Mercurial存儲庫中有兩個非常大的項目。
我正在將它們兩個重構爲較小的子項目。
這涉及到將源項目集從父項目目錄移動到子項目的子目錄中。
對於大多數文件,我只是將它們移動。
對於某些文件,我也必須進行更改。
在我提交我的重構更改之前,我想查看我對任何源文件所做的任何編輯。在GUI工具SourceTree中 - 它顯示我的任何修改(除了指示文件已被移動/重命名)。有什麼方法可以確定哪些文件也是從Mercurial命令行修改的?Mercurial移動跟着差異
這裏是一個具體的例子是什麼我談論:
iphonedev:EveryScape cdoucette $汞柱狀態-C工程/的iOS/ESSDK/src目錄/ ESSDK - 雜項/ ESDataManagerInMemory.m
一個工程/ iOS版/ESSDK/src/ESSDK-Miscellaneous/ESDataManagerInMemory.m 工程/的iOS/ESSDK/src目錄/ ESDataManagerInMemory.m
我如何比較舊的版本與當前的工作副本在不同的位置?
如果我只是這樣做:
hg diff Engineering/iOS/ESSDK/src/ESSDK-Miscellaneous/ESDataManagerInMemory.m
它讓我看到文件的全部內容(因爲在技術上它是在新位置添加)。
相反,我想之間差異:
- 工程/的iOS/ESSDK/src目錄/ ESDataManagerInMemory.m(倉庫的副本 - 以前的版本)
- 工程/的iOS/ESSDK/src目錄/ ESSDK,雜項/ESDataManagerInMemory.m(工作副本)
我也搜索過類似的問題。這篇文章很接近 - 但似乎只有在我繼續並承諾修改之後纔有意義。相反,我想在提交之前查找並檢查我的更改。
Mercurial diff not working after move/rename