files:
old = ["a", "b", "c"] new = ["d", "e", "c"] If all these files have same hash, we can use old[0] for all the copy to new location operations. So we have a -> d a -> e a -> c for relocations. But one problem is, old already has "c". So an "a -> c" sym link copy ends with "File exists" error.
This commit is contained in:
@@ -118,6 +118,7 @@ def find_relocations(oldfiles, newfiles):
|
|||||||
relocations = []
|
relocations = []
|
||||||
for hash in files_new.keys():
|
for hash in files_new.keys():
|
||||||
if hash in files_old:
|
if hash in files_old:
|
||||||
|
files_new[hash] = filter(lambda x:x not in files_old[hash], files_new[hash])
|
||||||
for i in range(len(files_new[hash])):
|
for i in range(len(files_new[hash])):
|
||||||
if files_old[hash][0].path != files_new[hash][i].path:
|
if files_old[hash][0].path != files_new[hash][i].path:
|
||||||
relocations.append((files_old[hash][0], files_new[hash][i]))
|
relocations.append((files_old[hash][0], files_new[hash][i]))
|
||||||
|
|||||||
Reference in New Issue
Block a user