Enhancement: Support `:` syntax to select subfolders Commands like `diff` or `restore` always worked with the full snapshot. This did not allow comparing only a specific subfolder or only restoring that folder (`restore --include subfolder` filters the restored files, but still creates the directories included in `subfolder`). The commands `diff`, `dump`, `ls` and `restore` now support the `:` syntax, where `snapshot` is the ID of a snapshot (or the string `latest`) and `subfolder` is a path within the snapshot. The commands will then only work with the specified path of the snapshot. The `subfolder` must be a path to a folder as returned by `ls`. Two examples: `restic restore -t target latest:/some/path` `restic diff 12345678:/some/path 90abcef:/some/path` For debugging purposes, the `cat` command now supports `cat tree :` to return the directory metadata for the given subfolder. https://github.com/restic/restic/issues/3871 https://github.com/restic/restic/pull/4334