Skip to content

feat: add "fetch all repositories" action in workspace menu#2537

Open
JC-Chung wants to merge 1 commit into
sourcegit-scm:developfrom
JC-Chung:feat/fetch-all-repos-in-workspace
Open

feat: add "fetch all repositories" action in workspace menu#2537
JC-Chung wants to merge 1 commit into
sourcegit-scm:developfrom
JC-Chung:feat/fetch-all-repos-in-workspace

Conversation

@JC-Chung

Copy link
Copy Markdown
Contributor

What

Add a "Fetch All Repositories" menu item to the workspace dropdown menu,
allowing users to fetch all open repositories in the active workspace with
a single action.

Why

When working with multiple repositories in a workspace, users currently have
to switch to each tab and trigger fetch individually (e.g., Ctrl+Down).
This action automates that process without requiring tab switching.

Changes

  • src/ViewModels/Repository.cs: Add FetchAllRemotesAsync() that directly
    runs Commands.Fetch for all remotes (similar to auto-fetch behavior),
    showing the IsAutoFetching overlay instead of the Fetch.axaml popup.
    Repositories with no remotes or an active index.lock are skipped silently.
  • src/ViewModels/Launcher.cs: Add FetchAllRepositoriesAsync() that
    iterates over a snapshot of Pages (to avoid collection-modified exceptions
    during async enumeration) and calls FetchAllRemotesAsync() on each open
    repository. Sends a completion notification to the active page when done.
  • src/Views/Launcher.axaml.cs: Add menu item with Icons.Fetch icon in
    OnOpenWorkspaceMenu after the separator, enabled only when at least one
    repository is open.
  • src/Resources/Locales/: Add Text.Workspace.FetchAllRepositories key to
    en_US.axaml, zh_CN.axaml, and zh_TW.axaml.

@JC-Chung JC-Chung marked this pull request as draft July 15, 2026 11:29
@JC-Chung JC-Chung force-pushed the feat/fetch-all-repos-in-workspace branch from 0337da5 to 035930b Compare July 15, 2026 11:55
@JC-Chung JC-Chung force-pushed the feat/fetch-all-repos-in-workspace branch from 035930b to fe0c5c8 Compare July 15, 2026 11:56
@JC-Chung JC-Chung marked this pull request as ready for review July 15, 2026 12:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant