Commit Graph

1650 Commits

Author SHA1 Message Date
Scott Chacon
045ddbf16e
Delete (unapply) branch when it's integrated upstream (#515)
* delete (unapply branch when the head matches the merge result)
* add debug stuff, create new branch if none applied
* if there are modified files on a vbranch, dont unapply it
* fix args in the wrong order
2023-06-28 12:40:10 +02:00
Kiril Videlov
44df0ac482 cleanup root layout scripts 2023-06-28 10:33:19 +02:00
Kiril Videlov
7fbfc7de20 Disable command palette
It's a good supporting featured, but it was not made with virtual
branches in mind. In it's current state it only introduces confusions,
and it's probably not functioning correctly.
2023-06-28 10:17:45 +02:00
Kiril Videlov
5c1f92b44b after vbranch target is updated refresh the vbranches 2023-06-28 09:53:05 +02:00
Kiril Videlov
494492992a this may be fixing freezing up when computer is ofline 2023-06-28 09:42:03 +02:00
Kiril Videlov
ca701b9979 more clear ternary operator 2023-06-27 22:33:17 +02:00
Kiril Videlov
6742211859 vbranches move functions 2023-06-27 22:33:17 +02:00
Kiril Videlov
e969abe1dc drop unused function from interface 2023-06-27 22:33:17 +02:00
Kiril Videlov
d334221b8a rename vbranches interface 2023-06-27 22:33:17 +02:00
Kiril Videlov
1a6c3b704f split the interfaces 2023-06-27 22:33:17 +02:00
Kiril Videlov
ca155eeeb8 dnd dropzone uses virtualbranch create 2023-06-27 18:30:13 +02:00
Kiril Videlov
bf7d62b62b move_virtual_branch_files to VirtualBranchesStore 2023-06-27 18:30:13 +02:00
Kiril Videlov
52839c2306 update_virtual_branch to VirtualBranchesStore 2023-06-27 18:30:13 +02:00
Kiril Videlov
59ddd5cf39 update_branch_target to VirtualBranchesStore 2023-06-27 18:30:13 +02:00
Kiril Videlov
b44ede5557 commit_virtual_branch to VirtualBranchesStore 2023-06-27 18:30:13 +02:00
Kiril Videlov
4a684e06cc move create_virtual_branch to virtualbranchesstore 2023-06-27 18:30:13 +02:00
Kiril Videlov
5cf11cee87 move set_target_branch to VirtualBranchesStore 2023-06-27 18:30:13 +02:00
Kiril Videlov
cfc756128a make no-cycle a warning until we solve 4 cycles 2023-06-27 14:46:39 +02:00
Kiril Videlov
0ad618159b configure plugin to detect TS dep cycles 2023-06-27 14:46:39 +02:00
Nikita Galaiko
daad336602 separate hunks type 2023-06-27 12:28:08 +02:00
Mattias Granlund
f6c6b6c51d Suggesting improvements to the vbranch ts code 2023-06-27 12:57:55 +03:00
Nikita Galaiko
5553659849 check session/meta when asserting session existance 2023-06-27 11:50:35 +02:00
Nikita Galaiko
c30623f15a detect changed hunks 2023-06-27 10:33:35 +02:00
Kiril Videlov
0a45945738 changed my mind about union types 2023-06-27 09:49:21 +02:00
Kiril Videlov
ec36f0c494 rename virtual branch interface in agent noun form 2023-06-27 09:49:21 +02:00
Kiril Videlov
8ed5b85b22 use union type instead of extending 2023-06-27 09:49:21 +02:00
Kiril Videlov
b2582c86a8 explicitly define VirtualBranch interface 2023-06-26 23:21:15 +02:00
Kiril Videlov
aa70290220 refresh store on updates 2023-06-26 23:21:15 +02:00
Kiril Videlov
33263af636 use branches from store 2023-06-26 23:21:15 +02:00
Kiril Videlov
d07d690883 add refresh even when getting from cache 2023-06-26 23:21:15 +02:00
Kiril Videlov
f7e19adb75 fix stupid mistake 2023-06-26 23:21:15 +02:00
Kiril Videlov
d194845742 something may or may not work here 2023-06-26 23:21:15 +02:00
Mattias Granlund
55ed0e3a5e Show toast on error 2023-06-26 22:55:23 +03:00
Nikita Galaiko
01e7f32a0d move hunks fix 2023-06-26 14:36:13 +02:00
Nikita Galaiko
5348f8f7bc support moving hunks between lanes 2023-06-26 13:46:26 +02:00
Kiril Videlov
51712e567c cleanup 2023-06-26 12:40:44 +02:00
Kiril Videlov
e2b7b4f2dc plain to instance when updating branches 2023-06-26 12:40:44 +02:00
Kiril Videlov
80be984c31 update branches list when there are new deltas 2023-06-26 12:40:44 +02:00
Nikita Galaiko
9b5e6eec2b protect vbranches with a semaphore 2023-06-26 12:29:50 +02:00
Nikita Galaiko
77c00a0723 fix warnings 2023-06-26 08:59:28 +02:00
Mattias Granlund
782c808233 Fix broken tray 2023-06-25 18:59:47 +03:00
Mattias Granlund
26180b4827 Set nowrap and ellipsis on hunk rows 2023-06-25 18:33:57 +03:00
Mattias Granlund
8b0b79e43a Fix problem where some files don't remain open
We currently need to explicilty exercise the cache for all files to
update the `expanded` variable that affects rendering.
2023-06-25 17:38:05 +03:00
Mattias Granlund
75b086f12b Update branches on commit/new branch 2023-06-25 15:38:25 +03:00
Scott Chacon
a090263b95
Update a branch name (#514)
Way to update a branch name
2023-06-25 13:01:15 +02:00
idonahue
da776b29b1 spelling error in commented out area 2023-06-25 10:09:09 +03:00
Mattias Granlund
6723a21d1f Make branch name an input element 2023-06-25 09:46:23 +03:00
Mattias Granlund
e7902e310c Make drop zone look more like UI design 2023-06-25 07:17:31 +01:00
Scott Chacon
619384405f
Update Target Branch (#510)
This PR implements a way to update an out of date target branch.

This adds logic to see if the target branch is out of date (if say, origin/master has commits that are not on target.sha) and will show in the UI that the frozen target branch is behind. If this happens, it adds a button to update, which will call an update_branch_target function in Rust.

This function will:

* Check that there is in fact a new commit on the target branch
* Try to merge that new head commit into your current working directory, bailing if it cannot
* If that succeeds (the new upstream can merge cleanly with all your vbranch content), it will then update all your virtual branches
* If the vbranch has no commits, it simply updates the head so the diffs work properly again
* If the vbranch has commits, it will merge the new head into the virtual branch head and write the new merge commit to the vbranch commit list. omg.

The patch also:
* Adds some tests for updating the target
* Calculates merge base on setup
* Only assigns stuff to active branches
* Adds a reset command to make all branches inactive for testing
2023-06-24 21:09:03 -07:00
Mattias Granlund
45bfee1a2b Remember expansion per file
Uses localStorage to store whether or not a file is toggled open. This
implementation behaves well wrt to "expand all", but the is never
flushed so this isn't a shippable solution.
2023-06-24 20:32:24 +01:00