幾天前,我收到一封電子郵件,內容是某人在構建我在Google Code上的Delphi項目時遇到的問題。項目文件和其中一個DFM文件在更新了我檢查過的一些更改之後被徹底清除了。我們反覆討論了一下,並將其追溯到他所說的SVN投入額外的東西。他刪除了這些文件並再次運行了更新,它工作正常。什麼能導致SVN更新不正確地合併?
我以前從來沒有看到這個問題,我是不是能複製或在我的最終驗證它的任何。沒有與其他用戶發生任何更新衝突,因爲我是唯一具有對存儲庫的寫入訪問權限的衝突。所以我想知道可能會造成這種情況。這是SVN的一個已知問題嗎?有沒有辦法阻止它發生?
有趣的把戲。但之後我會失去使用TortoiseSVN在檢查新批代碼之前檢查我的更改的能力。 – 2009-10-13 04:13:36
如果合併,那麼很容易破壞DFM文件,更改「不重要」的細節可能會導致組件順序發生更改。天真的合併可以完全消除它。 – 2009-10-13 04:27:46
@Mason - 你試過了嗎? TortoiseSVN - > Diff會顯示更改(它對我來說確實如此,但我已將它配置爲使用Beyond Compare)SVN不會顯示差異(例如在提交後的電子郵件中),而是會報告「二進制文件不同」 。我用Delphi編碼已經有好幾年了,但我猜它與.NET設計器文件類似。就個人而言,我不打擾爲這類文件設置MIME類型(我只是提出了一種可能的解決方案),因爲如果在更新到自動生成和維護的文件後看到「合併」狀態,這是一個非常大的線索可能會出錯:) – si618 2009-10-13 05:49:19