From 514d84df351f0d47694b30309c0ce33749c66315 Mon Sep 17 00:00:00 2001
From: Christophe Dumez <christophe@nexedi.com>
Date: Mon, 22 May 2006 16:28:17 +0000
Subject: [PATCH] - remove unversioned files before updating local working copy
 (to avoid conflicts)

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@7418 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5Subversion/SubversionClient.py    | 4 ++--
 product/ERP5Subversion/Tool/SubversionTool.py | 4 ++++
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/product/ERP5Subversion/SubversionClient.py b/product/ERP5Subversion/SubversionClient.py
index 374e834b30..7fc09ceaf7 100644
--- a/product/ERP5Subversion/SubversionClient.py
+++ b/product/ERP5Subversion/SubversionClient.py
@@ -294,7 +294,7 @@ try:
       return log_list
         
     def add(self, path):
-      return self.client.add(path=path, force=True)
+      self.client.add(path=path, force=True)
 
     def resolved(self, path):
       return self.client.resolved(path=path)
@@ -339,7 +339,7 @@ try:
       return self.client.cleanup(path=path)
 
     def remove(self, path):
-      return self.client.remove(url_or_path=path, force=True)
+      self.client.remove(url_or_path=path, force=True)
 
   def newSubversionClient(container, **kw):
     return SubversionClient(container, **kw).__of__(container)
diff --git a/product/ERP5Subversion/Tool/SubversionTool.py b/product/ERP5Subversion/Tool/SubversionTool.py
index 9b4deec454..a4b13bedee 100644
--- a/product/ERP5Subversion/Tool/SubversionTool.py
+++ b/product/ERP5Subversion/Tool/SubversionTool.py
@@ -727,6 +727,8 @@ class SubversionTool(BaseTool, UniqueObject, Folder):
     """Update a working copy.
     """
     path = self._getWorkingPath(self.getSubversionPath(business_template))
+    # First remove unversioned in working copy that could conflict
+    self.removeAllInList(x['uid'] for x in self.unversionedFiles(path))
     client = self._getClient()
     # Revert local changes in working copy first 
     # to import a "pure" BT after update
@@ -741,6 +743,8 @@ class SubversionTool(BaseTool, UniqueObject, Folder):
     """Update a working copy.
     """
     path = self._getWorkingPath(self.getSubversionPath(business_template))
+    # First remove unversioned in working copy that could conflict
+    self.removeAllInList(x['uid'] for x in self.unversionedFiles(path))
     client = self._getClient()
     # Update from SVN
     client.update(path)
-- 
2.30.9