Dev & Engineering ✓ Microsoft · Official git-syncgit-rebasegit-pushbranch-managementupstream-trackingconflict-handling

Git Branch Sync

Safely sync an upstream branch or publish the current session branch to a remote.

FollowSkills review · FSRS-2.0
Not recommended
49/ 100 5-point scale 2.5 / 5
Trust13 / 25 · 2.6/5

The skill explicitly forbids unapproved force-pushes, skipped hooks, and rewriting or dropping commits without asking, and directs the user to decide when conflict resolution is unclear. However, it instructs the agent to invoke a commit skill for uncommitted changes, while fetch, rebase, and push have external repository effects; stepwise confirmation, sensitive-data guidance, detailed data-flow disclosure, and a stronger rollback model are missing, so points are deducted.

Reliability8 / 20 · 2.0/5

The workflow is mostly internally consistent and includes upstream detection, conflict handling, rebase abort, and final state checks. It does not sufficiently specify diagnosable behavior for missing commit tooling, divergent histories, remote or authentication failures, hook failures, or incomplete pushes, and static review cannot reproduce the key paths, so the score remains moderate.

Adaptability10 / 15 · 3.3/5

Triggers cover syncing, pulling, rebasing, pushing, publishing, and setting an upstream, with a clear primary audience and scenario. Boundaries for read-only previews, non-Git branches, and complex divergence are not explicit, and Chinese-language interaction or mainland-China network reachability is not addressed, so points are deducted.

Convention8 / 15 · 2.7/5

The document has clear metadata, guidelines, workflow, and validation sections. Repository context supplies MIT licensing, version information, and verified Microsoft provenance, but the skill lacks installation or dependency notes, examples or FAQs, changelog/versioning, named maintenance responsibility, and an independent update path; assumptions about the commit skill are also unexplained.

Effectiveness6 / 15 · 2.0/5

For ordinary branch synchronization and publication, the command sequence is directly actionable and includes post-operation checks. Automatic handling of uncommitted changes, remote selection, divergent branches, and failure recovery still requires human judgment, and the files do not verify representative outputs or comparative benefit, so the static score is limited.

Verifiability4 / 10 · 2.0/5

The skill's commands, constraints, and validation criteria are auditable, and the repository contains general CI and test infrastructure. The supplied CI evidence does not cover this skill's key paths, and there are no dedicated SKILL.md tests or third-party execution records, so verifiability is limited.

Evidence confidence:Low Reviewed Jul 20, 2026 Reviewed revision 5b3e1be7be9e
Before you use it
  • Before execution, confirm whether working-tree changes should be committed and whether the selected remote and upstream are correct; committing is currently the default prerequisite.
  • Rebase and push can alter or publish repository history; pause for user direction on divergence, authentication failure, hook failure, or conflicts.
  • The documentation does not address mainland-China network reachability or provide dedicated automated regression evidence for this skill.
See the full review method →

What it does & when to use it

This skill synchronizes the current session branch with its upstream branch or publishes it to a remote repository. It checks for uncommitted changes and upstream configuration before fetching, comparing branch divergence, rebasing, pushing, or setting tracking information. It explicitly avoids unapproved force-pushes and skipped push hooks. When conflict resolution is unclear, it asks the user to decide.

Checks for uncommitted work; determines whether the current branch has an upstream; with an upstream, runs git fetch, checks ahead/behind counts, and rebases when needed; pushes local commits after a successful rebase; without an upstream, publishes with git push -u <remote> HEAD; then verifies working-tree cleanliness, sync state, and upstream configuration.

  1. A developer wants to update the current branch from its upstream and confirm whether it is already synchronized.
  2. A developer needs to push local commits to an already configured upstream branch.
  3. A developer is publishing a branch for the first time and wants its remote tracking branch configured.
  4. A rebase conflict, rejected push, or potentially destructive history operation requires an explicit user decision.

Pros & cons

Pros
  • Covers both branches with an existing upstream and first-time branch publication.
  • Checks for uncommitted changes before synchronization and validates the final Git state.
  • Clearly prevents unapproved force-pushes, skipped push hooks, and unrequested commit-history rewriting.
Limitations
  • Requires Git, remote repository access, and a usable working-tree state.
  • Uncommitted changes must first be committed with the /commit skill; this skill does not define that commit workflow.
  • It does not make ambiguous conflict decisions automatically and will not force-push after a history-rewriting rebase without approval.
  • The source does not provide standalone installation steps or a test suite.

How to install

The README identifies the skill at src/vs/sessions/skills/sync/SKILL.md, but it does not document a standalone installation command. For the full repository, follow the repository's own process for obtaining microsoft/vscode; the source does not specify where an individual skill should be installed or how a client loads it.

How to use

In a client that supports the skill, make a request such as “sync the current branch,” “pull the latest upstream changes and rebase,” “push the current branch,” or “publish this branch and set its upstream.” Provide an explicit decision when conflict resolution or a force-push approval is requested.

FAQ

Will this skill force-push?
No. It does not use --force or --force-with-lease without explicit user approval.
What happens if the branch has no upstream?
The skill determines the publishing remote and runs git push -u <remote> HEAD; if multiple remotes exist, it asks the user which one to use.
Does it resolve every rebase conflict automatically?
No. It asks the user when conflict resolution is unclear, and the rebase can be aborted if the user requests it.
Does using it cost anything?
The source does not state separate pricing for the skill. Its Code - OSS repository is distributed under the MIT license.

More skills from this repository

All from microsoft/vscode

Dev & Engineering ✓ Microsoft · Official

Tool Rename Compatibility Check

Protect existing prompts and tool configurations when built-in tools are renamed.

Dev & Engineering ✓ Microsoft · Official

Copilot Chat OpenTelemetry Instrumentation

A repository-specific guide for consistent OpenTelemetry instrumentation in Copilot Chat.

Dev & Engineering ✓ Microsoft · Official

VS Code Configuration Policy Maintainer

Standardize VS Code policy registration, export, and validation.

Design & Frontend ✓ Microsoft · Official

VS Code Design Philosophy

Turn vague UI discomfort into concrete fixes using shared values, principles, and design moves.

Dev & Engineering ✓ Microsoft · Official

Agent Host E2E Test Assistant

Maintain VS Code Agent Host end-to-end tests with strict replay fixtures.

Dev & Engineering ✓ Microsoft · Official

VS Code Integrated Browser Architecture

A practical architecture guide for safely changing VS Code's cross-process integrated browser.

Dev & Engineering ✓ Microsoft · Official

VS Code Agents Window Sessions

Safely implement and repair VS Code Agents window features.

Dev & Engineering ✓ Microsoft · Official

Commit Assistant

Creates repository-style commit messages and safely commits code changes.

Dev & Engineering ✓ Microsoft · Official

Agent Host Log Investigator

Trace session, transport, and host failures in Agent Host debug exports.

Dev & Engineering ✓ Microsoft · Official

VS Code Unit Test Runner

Run VS Code repository unit tests by file, test name, or compiled-output glob.

Dev & Engineering ✓ Microsoft · Official

VS Code Agent Customization Assistant

Create, repair, and troubleshoot VS Code Agent customization files and their loading behavior.

Dev & Engineering ✓ Microsoft · Official

Code OSS Launch & Debug

Launch a built-from-source VS Code with isolated profiles, Playwright control, and multi-process debugging ports.

Dev & Engineering ✓ Microsoft · Official

VS Code Accessibility Development Guide

A practical specification for accessible interactive features in VS Code.

Design & Frontend ✓ Microsoft · Official

VS Code CSS Layout Standards

Build reliable VS Code-style CSS layouts and text truncation behavior

Dev & Engineering ✓ Microsoft · Official

VS Code Chat Performance Lab

Benchmark chat rendering and detect memory growth across VS Code builds.

Dev & Engineering ✓ Microsoft · Official

Component Fixtures for Screenshot Testing

Create stable, theme-aware VS Code component fixtures for isolated screenshot testing.

Dev & Engineering ✓ Microsoft · Official

VS Code Smoke Test Assistant

Run, filter, and debug VS Code end-to-end smoke tests.

Dev & Engineering ✓ Microsoft · Official

VS Code Crash Dump Symbolicator

Turn native VS Code crash dumps into readable backtraces with method names.

Dev & Engineering ✓ Microsoft · Official

Local VS Code Web Workbench

Validate VS Code workbench and Agents window changes in a local vscode.dev instance.

Dev & Engineering ✓ Microsoft · Official

Feedback Action

Reads current-session feedback and applies the requested code changes.

Related skills