Skip to content

Implement assigning of uncommitted changes to specific lanes in the v3 UI #8637

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
12 of 18 tasks
krlvi opened this issue May 19, 2025 · 0 comments
Open
12 of 18 tasks
Assignees
Labels
enhancement An improvement to an existing feature in-progress V3 The ominous upcoming major release should address this issue, eventually

Comments

@krlvi
Copy link
Member

krlvi commented May 19, 2025

Currently the v3 UI does not support the functionality of assigning uncommitted changes to different lanes.

The reason behind this is technical - the new v3 UI uses new app internals with a different architecture that improves stability, correctness and performance, but no longer have the concept of Hunk Ownership that allowed GitButler to track uncommitted changes to branches.

This GH issue is about tracking the implementation of the same functionality (assigning uncommitted changes to lanes) in a way that is compatible with the v3 architecture.

Tasks

  • Initial type definition of hunk assignment to a lane
  • API for listing hunk assignments
  • API for creating a new assignment
  • Handling of file system changes
  • Handling of hunk dependencies (locks)
  • Persistence
  • Handling of "unapply branch" containing assigned hunks
  • Reconciliation of locked hunks should not set the allocation of unallocated files
  • Performance: Use a dirty bit signal from the file system watcher to make the "list assignments" endpoint not reconcile when it's not needed
  • Add "locked" to the assignment type (useful to the UI)
  • The assign endpoint should take a list - helpful for the UI
  • Make the request type used in assign_hunk a subset of the type in hunk_assignments
  • Report to the UI when the assign_hunk operation rejects an operation due locking / branch dependency
  • UI: Types
  • UI: Service methods
  • User interface for displaying assignments correctly
  • User interface for creating assignments
  • Explore UX for creating commits from within a lane
@krlvi krlvi added enhancement An improvement to an existing feature in-progress V3 The ominous upcoming major release should address this issue, eventually labels May 19, 2025
@krlvi krlvi self-assigned this May 19, 2025
@krlvi krlvi changed the title Implement assigning of uncommitted changes to specific lanes in the v3 UI Assigning of uncommitted changes to specific lanes in the v3 UI May 19, 2025
@krlvi krlvi changed the title Assigning of uncommitted changes to specific lanes in the v3 UI Implement assigning of uncommitted changes to specific lanes in the v3 UI May 19, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement An improvement to an existing feature in-progress V3 The ominous upcoming major release should address this issue, eventually
Projects
None yet
Development

No branches or pull requests

1 participant