Skip to main content
Version: Next

Taking an upstream update

The day-to-day loop:

# 1. refresh your upstream mirror — again, your transport
git -C vendor pull # or a submodule update, or a re-copy

# 2. look before you leap
cedit sync --from vendor --dry-run

# 3. do it
cedit sync --from vendor

# 4. read what changed, in the language of your own adaptations
cedit diff
git diff skills/

# 5. commit the document and the state together
git add skills .cedit && git commit -m "sync skills from upstream"

Exit code 0 means it merged clean. Exit code 1 means one or more conflicts were recorded — jump to A conflict, end to end. Exit code 2 means nothing merged; read the message.

In CI, the useful gate is status, which needs no upstream at all:

cedit status || echo "conflicts are open in this branch"

Exit 1 there means "a human must decide"; exit 2 means the state itself is broken (a missing base snapshot, usually an incomplete commit).