rsync-like --remove-source-files option for sftp
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 6.9k
- Forks
- 748
- PR merge metrics
- No merged PRs in 30d
Description
https://github.com/blinksh/blink/issues/567#issuecomment-1149329978
This is essentially a verified move command. It copies files and once confirmed to be on the destination, it removes from the source. This provides much safer file moves across unstable network connections compared to alternatives such as a typical sftp copy, then manually removing files after complete, since it removes the human from the process and won't remove files which didn't fully copy due to a network interruption.
I understand you aren't going to port all of rsync, but I think this could be an option added to the existing sftp in Blink.
https://explainshell.com/explain?cmd=rsync%20--remove-source-files
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating Blink's existing SFTP client and file-copy entry points, then trace how transfers report completion and failures. Define the option's behavior from the issue: remove each source file only after its destination copy is confirmed, including interruption cases. Add coverage for successful and interrupted transfers before verifying the SFTP command behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- ios, swift
- Domain
- mobile, networking
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100