Para copiar um projeto entre discos no Mac mantendo as datas de modificação dos seus ficheiros, utilize o comando ditto do macOS no Terminal e verifique o resultado. Há uma limitação importante: a documentação do ditto indica a preservação das horas de modificação e de acesso, mas não a data original de criação do ficheiro. Se por “data” se refere ao valor Criado no Finder, as opções de cópia documentadas do macOS não prometem mantê-la. Verifique que data é importante antes de apagar ou reformatar o disco de origem.
Primeiro, identifique a data que precisa de manter
A data de Modificação de um ficheiro regista quando o seu conteúdo foi alterado pela última vez. A sua data de Criação é um atributo do sistema de ficheiros independente. O Finder também pode apresentar a Data de adição, que descreve quando um elemento foi adicionado a uma localização específica. A Apple lista as datas de criação e de alteração de conteúdo como atributos de metadados do sistema de ficheiros distintos, pelo que preservar um não garante que os outros tenham sido preservados. Chaves de atributos de metadados do sistema de ficheiros da Apple
Para o arquivo de um projeto, a data de Modificação é frequentemente a data utilizada para identificar a última versão editada. Se necessitar especificamente da data de Criação ou da Data de adição — por exemplo, porque outro fluxo de trabalho ordena os ficheiros por esse campo —, trate isso como um requisito separado. Não deduza que a data de Criação se manteve apenas porque a de Modificação foi preservada.
Copiar o projeto com o ditto
Para uma nova pasta de destino, ligue ambos os discos e abra o Terminal. Substitua os nomes de exemplo do volume e da pasta pelos nomes apresentados no Finder. A pasta de destino não deve conter previamente uma cópia do projeto que precise de manter: o ditto pode intercalar o conteúdo numa pasta de destino existente e substituir ficheiros com nomes correspondentes.
ditto -V "/Volumes/SourceDrive/Project" "/Volumes/BackupDrive/Project"
Isto copia o conteúdo da pasta do projeto para uma pasta de destino chamada Project; o parâmetro -V apresenta cada elemento copiado. O manual do ditto no macOS indica que os elementos copiados mantêm as horas de modificação e de acesso da origem, e que os resource forks e atributos alargados são preservados por predefinição. Não lista a hora de criação entre os carimbos de data/hora que promete preservar. DITTO(1), página do manual do macOS
Se a pasta de destino já existir, o ditto junta o conteúdo da origem a esta. Utilize uma pasta de destino nova e com o nome correto quando pretender uma cópia limpa, e verifique a saída do comando em busca de erros antes de confiar no resultado. Não adicione --norsrc sem necessidade: o manual adverte que esta opção desativa a cópia de resource forks e, a menos que seja substituída, também de atributos alargados e ACLs. Esses atributos podem ser importantes para ficheiros de projetos no Mac.
Por que razão o cp -p não resolve a data de criação
O comando integrado cp com o argumento -p preserva as horas de modificação e de acesso, juntamente com outros atributos caso as permissões o permitam. O manual do cp da Apple também não inclui a hora de criação nessa lista. Isso torna o cp -p útil quando pretende manter as datas de modificação, mas não é uma forma documentada de transferir a data original de Criação de um ficheiro entre discos. Manual do cp da Apple
Nenhum dos comandos pode garantir que todos os atributos serão representados de forma idêntica em qualquer destino. O sistema de ficheiros de um disco e as permissões atribuídas à sua conta afetam os metadados que podem ser guardados ou aplicados. O manual do ditto, por exemplo, descreve a preservação de alguns atributos apenas em volumes de destino e permissões compatíveis.
Verificar antes de remover o original
Após a cópia, selecione alguns ficheiros representativos no Finder e prima Comando-I para abrir a janela Informações. Compare os valores de Modificado da origem e do destino; compare também Criado se isso for um requisito para si. Na vista de Lista do Finder, pode inspecionar e ordenar pelas colunas de datas disponíveis, embora a Apple documente a apresentação da data de modificação na vista de Lista em vez de garantir que todos os campos de datas sejam transferidos. Suporte da Apple: Organizar os ficheiros no Finder do Mac
Verifique os ficheiros integrados no projeto, bem como a pasta principal, e abra ficheiros de projeto fundamentais a partir do destino. Se a data de Modificação coincidir mas a de Criação tiver sido alterada, a cópia cumpriu a preservação de carimbos de data/hora documentada, mas não atendeu ao requisito da data de criação. Mantenha a origem intacta até confirmar que as datas e o conteúdo do projeto de que depende estão corretos no destino.
Se as datas de Criação exatas forem essenciais, escolha um fluxo de trabalho de cópia ou arquivo apenas após confirmar que este suporta explicitamente a preservação e o restauro de datas de criação para os sistemas de ficheiros de origem e de destino. A documentação do ditto e do cp -p da Apple não faz essa promessa, pelo que não deve tratar nenhum destes comandos como uma solução comprovada para esse requisito.
Fontes
File System Metadata Attribute Keys — Apple Developer
DITTO(1) — Páginas do Manual do macOS
cp(1) — Apple Open Source
Organizar os ficheiros no Finder do Mac — Suporte da Apple