docs: fix push-to-server.cmd for Cygwin rsync (bundled ssh, known_hosts, *.tmp) - #74
Merged
Merged
Conversation
Rolling out the Windows->Linux dash push surfaced three issues the example
script would have walked the next person straight into:
- A Cygwin rsync (`choco install rsync`) driving the native Windows OpenSSH
corrupts rsync's binary stream and dies with "connection unexpectedly closed
(0 bytes received so far)", even though plain `ssh host echo ok` works. It must
use the ssh that ships with rsync. Add an SSH_EXE marker and say why.
- That bundled Cygwin ssh has no HOME, so it can't write the default known_hosts
("Failed to add the host ... (/known_hosts)"). Add an explicit writable
UserKnownHostsFile.
- Exclude *.tmp so a producer's partial-write temp (atomic write via os.replace)
never propagates.
Also correct the install path to the choco layout
(C:\ProgramData\chocolatey\...) and note the matching bundled ssh location, and
add a "cwRsync gotcha" bullet to SYNCING.md's Dash store section.
Docs only; no code changes.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Fixes the
push-to-server.cmdexample (Windows -> Linux dash rsync push) with the working recipe from an actual rollout. Follow-on to #72.Why
Setting up the real Windows -> VPS push hit three issues the example would have led the next person straight into:
choco install rsyncgives a Cygwin rsync; if it drivesC:\Windows\System32\OpenSSH\ssh.exe, it corrupts rsync's binary stream and dies withconnection unexpectedly closed (0 bytes received so far)— even though a plainssh host "echo ok"works. It must use the ssh that ships with rsync (...\lib\rsync\tools\bin\ssh.exe). The old script used baressh, which grabs the native one.Failed to add the host ... (/known_hosts)). Needs an explicit writable-o UserKnownHostsFile=.*.tmpfrom cotdata's atomicos.replace) would propagate. Now excluded.Changes
docs/examples/windows/push-to-server.cmd: add anSSH_EXEmarker (bundled Cygwin ssh) with a comment explaining the 0-byte failure; addUserKnownHostsFile; add--exclude "*.tmp"; correct the install path to the choco layout (C:\ProgramData\chocolatey\...) and note where the matching ssh lives.docs/SYNCING.md: add a "cwRsync gotcha" bullet to the Dash store section and mention the*.tmpexclusion.Docs only; no code changes. Verified end-to-end against the live dash VPS.
🤖 Generated with Claude Code