From b5d7ed285a28db568ff2d8d86b0334b9dd6eadd2 Mon Sep 17 00:00:00 2001 From: Dawson Toth Date: Thu, 30 Jul 2026 09:33:03 -0400 Subject: [PATCH] docs(deploy): note the unpushed-commit warning alongside the dirty-tree one by_ref now warns in both directions (harper#1850): uncommitted changes won't ship, and a commit that's on no remote branch can't be cloned by the cluster. Mentions that the second check reads local remote-tracking refs, so a stale view can warn about a commit that was in fact pushed. --- reference/components/applications.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/reference/components/applications.md b/reference/components/applications.md index 95882a49..2d833a62 100644 --- a/reference/components/applications.md +++ b/reference/components/applications.md @@ -162,7 +162,7 @@ harper deploy ref=9f8c2a1 restart=true replicated=true **A reference is pinned to a SHA, not to the name you typed.** Tags and branches are resolved locally and the full commit SHA is what ships. This matters on a cluster: peers resolve the package independently, so a tag that moves mid-deploy — or a branch that advances — could otherwise leave nodes running different code. -**Commit and push first.** The cluster clones from the remote, so it only sees commits that have been pushed. `by_ref` warns when the working tree is dirty, since uncommitted changes won't be part of the deploy. +**Commit and push first.** The cluster clones from the remote, so it only sees commits that have been pushed. `by_ref` warns in both directions: when the working tree is dirty (those changes won't be part of the deploy) and when the commit being deployed isn't on any remote branch (the cluster won't be able to clone it). The second check reads your local remote-tracking refs, so run `git fetch` if you get it for a commit you know you pushed. #### Private repositories