<div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="gmail_quote"><div>What about giving the user a choice when a duplicate is found? As a user, I wouldn&#39;t like the software to create two copies of the same project (maybe different versions of it) and then me having to delete one of them. Lets just give a &quot;Overwrite, Rename, Skip&quot; option.<br>

What do you guys think ?<br></div></div></blockquote><div> <br>My vote is against, for the following reasons:<br><ul><li>True duplicates (the kind we don&#39;t want to have) will only occur in one of two scenarios.<br>a) I export all projects, then import all projects on the same PlasMate instance, which is a senseless thing to do. Or I import twice onto the same instance, again senseless.<br>
b) I export my projects and then go to another computer where someone else has imported one of my projects (from online, say). This is gonna be rare, and isn&#39;t really a true duplicate. You may actually want to keep both.<br>
The vast majority of conflicts are likely going to be the kind where you unintentionally name two different things with the same name.<br><br></li><li>Even in the rare case that true duplicates occur, the remedy is trivial. One button-click away.<br>
<br></li><li>Prompting with &quot;Overwrite, Rename, Skip&quot; is bad because, as I have repeatedly reiterated, folder names are invisible to the user. ie, when there is a folder name conflict - <b>*the user cannot see it*</b>! If the user doesn&#39;t see a conflict but PlasMate prompts and insists that there is a conflict, we are definitely going to confuse the user. Furthermore if he decides to rename but doesn&#39;t see any visible effect from the renaming (because folder names are not visible!), he is going to become even more confused. And worse - he will probably report it as a bug.</li>
</ul><br>If you guys insist I guess we could use a hash check to ignore &quot;pure&quot; true duplicates, so the algorithm reads something like this:<br><br>for each folder f in import archive {<br>    for each folder g in the target location {<br>
       if hash(f) == hash(g) { // a &quot;pure&quot; duplicate<br>          delete f from archive;<br>          goto end;<br>       }<br>    }<br>    while f also exists in the target location {<br>       generate a new name for f and rename f in the archive;<br>
    }<br>    end:<br>}<br>extract archive to target location;<br><br>But particularly for the third reason above, I really don&#39;t like the idea of prompting.<br><br clear="all">----<br>Jason &quot;moofang&quot; Lim Yuen Hoe<br>
<a href="http://yuenhoe.co.cc/">http://yuenhoe.co.cc/</a><br><br>
<br><br></div></div>