Add --ignore-inode option to backup cmd.#2047
Add --ignore-inode option to backup cmd.#2047giacomocariello wants to merge 3 commits intorestic:masterfrom
Conversation
Codecov Report
@@ Coverage Diff @@
## master #2047 +/- ##
==========================================
- Coverage 51.18% 47.07% -4.11%
==========================================
Files 176 176
Lines 14065 14069 +4
==========================================
- Hits 7199 6623 -576
- Misses 5817 6449 +632
+ Partials 1049 997 -52
Continue to review full report at Codecov.
|
1f6d98c to
58b203d
Compare
|
This reduced the amount of time it took for converting my rdiff-backup snapshots to restic snapshots from over an hour to under 8 minutes. I would love to see it merged into restic mainline. |
There was a problem hiding this comment.
Thank you very much for your contribution! I've had a look at the code, while it get's the job done, a lot of places must be touched to pass in an option of type ModifiedIgnores, which only has one field. That feels overly generic to me.
I'd like to propose a different approach:
- Add a new field to the
Archiverstruct,IgnoreInode bool - Change the signature of
fileChangedlike this:
func fileChanged(fi os.FileInfo, node *restic.Node, ignoreInode bool) bool- Pass the
arch.IgnoreInodetofileChanged
The default value for the bool is false, so the inode is checked.
What do you think? Please let me know if you need any help!
Other nitpick: Can you please remove the trailing . from the summary line fro the commit messages? Thanks!
|
@fd0 yup, no problem on my side. I'll try and apply your requests. The idea of having a struct to handle multiple types of ignore flags was probably overengineered at this stage. |
|
Hey, are you still interested in working on this? Is there anything you need, or are you stuck? |
|
I'm really interested in this feature, do you know if it will go in, finally? :) |
|
@robvalca this PR is incomplete, it looks like @giacomocariello did not have the time to rework it yet. So we need to wait until this happens (or somebody else volunteers to do it) :) |
|
@fd0, @giacomocariello do you think that I could take on this? I'm newbie in golang (and btw in github collab) but with the work already done and some help I think that I could finish this. :) |
revised version of restic#2047
|
Superseded by #2205, I'm closing this Pr. Thank you very much for your work @giacomocariello! |
What is the purpose of this change? What does it change?
This PR adds --ignore-inode option to backup command, in order to support those filesystems that don't support fixed inodes, typically Fuse, pCloud, etc.
Was the change discussed in an issue or in the forum before?
It was already discussed #1631.
Checklist
changelog/unreleased/that describes the changes for our users (template here)gofmton the code in all commits