rewrite: Always set the Original field in a rewritten snapshot
The Original field is meant to remember the original snapshot id if e.g. changing its tags. It was only set by the `rewrite` command if it was not set previously. However, a rewritten snapshot is potentially rather different from the original snapshot. Thus just always set the Original field. This also makes it easier to later on detect and potentially remove the original snapshots.
This commit is contained in:
parent
049a105ba5
commit
38b2e9b42c
2 changed files with 3 additions and 4 deletions
|
@ -5,3 +5,4 @@ unwanted files.
|
|||
|
||||
https://github.com/restic/restic/issues/14
|
||||
https://github.com/restic/restic/pull/2731
|
||||
https://github.com/restic/restic/pull/4079
|
||||
|
|
|
@ -123,10 +123,8 @@ func rewriteSnapshot(ctx context.Context, repo *repository.Repository, sn *resti
|
|||
return true, nil
|
||||
}
|
||||
|
||||
// Retain the original snapshot id over all tag changes.
|
||||
if sn.Original == nil {
|
||||
sn.Original = sn.ID()
|
||||
}
|
||||
// Always set the original snapshot id as this essentially a new snapshot.
|
||||
sn.Original = sn.ID()
|
||||
*sn.Tree = filteredTree
|
||||
|
||||
if !opts.Forget {
|
||||
|
|
Loading…
Reference in a new issue