Commit Graph

8788 Commits

Author SHA1 Message Date
Sebastian Thiel
7ce143954f
Do not dynamically calculate the head commit when listing virtual branches.
That way, the head is static which allows to re-use the worktree status across
multiple related calls.

Also, add a way to quickly get the `head_commit()` from a `git2::Repository`.

Note that this may cause breakage in the app, as now it will see the actual
head, not a computed one, but that should also help us to find places that
didn't properly update their state.
2024-08-28 21:16:43 +02:00
Sebastian Thiel
fc63929da3
Add a flag to allow performance logging: GITBUTLER_PERFORMANCE_LOG
````
GITBUTLER_PERFORMANCE_LOG=1 LOG_LEVEL=debug pnpm tauri dev
````

Additionally, some noise was removed by turning a warning into
a trace.
2024-08-28 11:41:29 +02:00
Sebastian Thiel
7e0878a14f
Use read-only worktree diff
The worktree diff is essentially a 'git status' with a given tree,
and that can be expressed with a diff of the workdir, the index and a tree.

This comes at the expense of not being able to control which file sizes are diffed.
2024-08-28 11:10:04 +02:00
Sebastian Thiel
bd2c19db0b
Allow the bench profile to compile faster
There we don't necessarily need every last bit of optimization like
one would want in release profiles, but build performance is of the essence
for developer productivity.
2024-08-28 11:10:04 +02:00
Sebastian Thiel
30cc6a4838
Add branch status to CLI
It calls `list_virtual_branches()` which kind of has the effect of a status call.
2024-08-28 11:10:02 +02:00
Sebastian Thiel
dd724f310d
Also debug-trace information on list_virtual_branches calls.
This can be useful for those who seek extra information, and while it's
dominating refresh times.
2024-08-28 11:09:33 +02:00
Kiril Videlov
75805d35d8
Merge pull request #4718 from gitbutlerapp/branch-stacking-first-stab
branch stacking first stab
2024-08-27 14:33:19 +02:00
Kiril Videlov
06f50b4531 Merge branch 'master' into branch-stacking-first-stab 2024-08-27 14:13:08 +02:00
Nico Domino
a9b12f44b0
fix: use ubuntu-22.04 to build app for release (#4767) 2024-08-27 12:11:42 +00:00
Kiril Videlov
b943c35293
code review fixes 2024-08-27 14:05:27 +02:00
Caleb Owens
a7399ab083
Merge pull request #4760 from gitbutlerapp/Show-files-in-edit-mode
Show files in edit mode
2024-08-27 13:51:48 +02:00
Caleb Owens
0b397d2368
Jiggle some code about 2024-08-27 13:05:28 +02:00
Caleb Owens
3fb5077c4a
Somethign somethign matchy matchy design 2024-08-27 13:05:27 +02:00
Caleb Owens
d2d3afbf2b
Added unstaged changes event 2024-08-27 13:05:07 +02:00
Sebastian Thiel
7199105561
Merge pull request #4765 from Byron/git2-to-gix
merge-base performance
2024-08-27 12:31:15 +02:00
Sebastian Thiel
06edec70cb
reuse the commit-graph between runs
This time, it contains whole commits and only flags are reset
between runs. With this amount of re-use, it will manage
to rival `git2`.
2024-08-27 12:17:54 +02:00
Sebastian Thiel
c2decbbdc7
Use the latest version of gix for performance improvements. 2024-08-27 12:17:52 +02:00
Nico Domino
e52676c9b3
fix: rm mappings where the target file name is too common (#4766) 2024-08-27 09:57:52 +00:00
Sebastian Thiel
b081a115c8
Offload commit-walk to the commit-thread
That way, it can leverage already held commit-objects, and be faster
in the absence of a commitgraph.
2024-08-27 09:20:07 +02:00
Sebastian Thiel
afcc1ee26e
Merge pull request #4757 from Byron/git2-to-gix
gix merge-base for branch-details
2024-08-27 06:43:16 +02:00
Kiril Videlov
4b5a8d14ef
add commands for pushing change references 2024-08-26 21:38:40 +02:00
Kiril Videlov
cef701796d
update the create reference method to take change id 2024-08-26 20:49:01 +02:00
Caleb Owens
68d4768f12
Merge pull request #4761 from gitbutlerapp/Correct-the-tree-sdie-which-we-write
Correct the tree side which we write
2024-08-26 19:52:24 +02:00
Sebastian Thiel
82aa2d1760
use gix powered merge-base for performance and reduced memory consumption 2024-08-26 19:35:09 +02:00
Caleb Owens
e463e2b2e9 Correct the tree side which we write 2024-08-26 19:34:44 +02:00
Sebastian Thiel
4ad8c0ed11
use latest gix to make merge-base available. 2024-08-26 19:34:21 +02:00
Kiril Videlov
66257fba2f
rename reference module to change_reference 2024-08-26 19:15:58 +02:00
Nico Domino
b287516cc7
feat: use PR template when available (#4736) 2024-08-26 17:08:37 +02:00
Kiril Videlov
89d1186b06
refactor this to be a ChangeReference
it turns out that a reference to a change_id is all that we need
2024-08-26 17:02:38 +02:00
Mattias Granlund
2f684d620b Suppress up-to-date if not invoked manually 2024-08-26 15:32:52 +01:00
Caleb Owens
564cd06666
Merge pull request #4756 from gitbutlerapp/Comments-and-another-enum-correction
Commits and another enum correction
2024-08-26 15:45:45 +02:00
Caleb Owens
f6dae49a8d Commits and another enum correction 2024-08-26 15:40:22 +02:00
Pavel Laptev
99dcf812c4
Add zoom functionality with keyboard shortcuts and update menu actions for the View item (#4753)
* feat: Add zoom functionality with keyboard shortcuts and menu actions

feat: Implement global settings menu action navigation to settings page

feat: Implement theme switching functionality with keyboard shortcut and menu action

* code review fixes
2024-08-26 15:24:44 +02:00
Caleb Owens
3170042895
Merge pull request #4754 from gitbutlerapp/Use-correct-sides
Use the auto-resolution if the head is conflicted
2024-08-26 15:11:08 +02:00
Caleb Owens
ca0ece9d49 Use the auto-resolution if the head is conflicted 2024-08-26 15:05:36 +02:00
Kiril Videlov
3d61b7a088
Merge pull request #4751 from Byron/gpg-improvements
make GPG related spawn failures even clearer (#4750)
2024-08-26 11:15:17 +02:00
Yerke Tulibergenov
417a0241ce update git2-hooks to 0.3.3 2024-08-25 23:25:45 +01:00
Sebastian Thiel
1520a4b7a3
make GPG related spawn failures even clearer (#4750)
This should help self-disagnose probelms aroung GPG not being found.
2024-08-25 09:18:33 +02:00
Kiril Videlov
2ddb032ebf
show relevant commit refs if feature is toggled 2024-08-23 21:03:44 +02:00
Kiril Videlov
33e7d7b269
adds the ability to create branch refs from the UI 2024-08-23 18:07:24 +02:00
Caleb Owens
fdcbae3250
Merge pull request #4746 from gitbutlerapp/UI-lib-updates-#5
UI lib updates #5
2024-08-23 16:37:39 +02:00
Pavel Laptev
681d118a1f icon prop fix 2024-08-23 16:25:32 +02:00
Pavel Laptev
9ffe096323 badge component modified 2024-08-23 16:20:57 +02:00
Caleb Owens
ef92f4d991
Merge pull request #4747 from gitbutlerapp/css-variable-auto-complete
Have CSS variables auto-complete
2024-08-23 16:08:45 +02:00
Caleb Owens
16ebe5d81e Have CSS variables auto-complete 2024-08-23 16:06:57 +02:00
Pavel Laptev
2b5b5c00aa remove unused code 2024-08-23 15:49:49 +02:00
Pavel Laptev
964f700f04 update FileListItem and FileIcon components 2024-08-23 15:42:00 +02:00
Caleb Owens
74a5c1a2ae
Merge pull request #4742 from gitbutlerapp/Exit-edit-mode-without-saving
Exit edit mode without saving
2024-08-23 15:33:53 +02:00
Kiril Videlov
4668a1ec3d
update create and update reference apis
No need to provide the change_id as it can be obtained from the commit itself
2024-08-23 14:32:31 +02:00
Sebastian Thiel
ca62ac8893
Merge pull request #4744 from Byron/git2-to-gix
better rev-walk in branch listing
2024-08-23 13:48:02 +02:00