Patent ID: 8620861

Claim:
A method of preserving directory metadata associated with an edited directory, comprising: on a client device: storing in a log information denoting a plurality of create, delete, and rename operations for one or more directories in a file system and one or more files in the one or more directories; identifying in the log two or more file system operations denoted in the log, including an operation involving a first directory and another operation involving a second directory, that together comprise an atomic operation, which is an atomic save of a respective directory, the first directory comprising a first version of the respective directory, and the second directory comprising a second version of the respective directory that is subsequent to the first version of the respective directory, the first directory and second directory each having associated metadata; in accordance with the identification of the two or more file system operations as comprising the atomic operation, the atomic operation comprising said atomic save of the respective directory, revising metadata of the second directory with a subset of the metadata of the first directory; identifying, in the respective atomically saved directory, a set of files associated with the respective directory; for a respective file in the identified set of files, the respective file having a corresponding first file in the first version of the respective directory and second file in the second version of the respective directory, the first file and second file each having associated metadata, associating a subset of the metadata of the first file with the second file, such that at least one of a globally unique file identifier and file access permissions associated with the first file become associated with the second file; and performing a synchronization with a server system, the synchronization utilizing the second file in conjunction with the globally unique file identifier to synchronize at least one of content and metadata of the second file on the client device with corresponding information stored at the server system with respect to the globally unique file identifier.