If you are talking about SharePoint Migration Tool (SPMT), so the answer is YES.
The Version is a supported item in SharePoint Migration Tool, and it will be preserved based on your setting.
Migrate file version history: If set to Off, only the most recent version of the file will be migrated. If set to On, you can choose whether to keep all versions or ...
Try to check if the description is not empty using the below condition in customCardProps
"display": "=if(([$Description] ==''),'none','block')"
The file metadata of automatically generated by System can not be cloned to another file. For example: GUID, ID, File Size.
I suggest you can create MS Flow to achieve your design.
—————————————————— Updated Answer ————————————————
Execute the following PowerShell script to copy the file metadata to another document.
Get the data of the FileA：
Keeping versions/Version History is fully supported while using SPMT.
One more thing you should know, if you choose to migrate all versions with the contents, make sure you have all documents/items approved/published when you have versioning enabled, since the draft items (which are in status of “Pending”) will be migrated as well.
You could add filter in the end of rest api like this:
&$filter=FileLeafRef eq 'FolderName'
/_api/Web/Lists/GetByTitle('Documents')/items?$select=FileLeafRef,File_x0020_Type,Category,Category0,OData__Author,Folder,File,ContentType&$filter=FileLeafRef eq 'Folder1'
This is the expected behavior since version histories do not carry with the document when you move it on most occasions.
In addition to the first Answer: If you have publishing features activated on this site, you can use Content and Structure under Site Settings to move the document, which will retain all version history safely.
You can also refer to the ...
When you move a file, version history starts at 0 again. SharePoint introduces it's own versions when creating the file (so there are versions prior to you initially working on it). When you move files this way, the Created/Modified values are updated to the individual who performed the Move action.
If you do not want to modify metadata in any way, a ...
You need to check below things which might be causing this issue:
Check if there are any item/document level permissions applied to documents by default (maybe by using any flow/workflow).
Checked out files:
Check if documents are checked out by default. If yes, user needs to check-in/publish the documents so that other users can see ...
You can get all the list/library fields (hidden/read-only/required/optional) using below endpoint:
Microsoft documentation: Working with lists and list items with REST