Commit Graph

365 Commits

Author SHA1 Message Date
Kiril Videlov
ea5f8e8dad move snapshot CreateBranch to before the operation 2024-05-23 11:23:37 +02:00
Kiril Videlov
7bd3548030 move snapshot DeleteBranch to before the operation 2024-05-23 11:12:33 +02:00
Kiril Videlov
4e234d6b5c move snapshot ApplyBranch before the operation 2024-05-23 11:07:30 +02:00
Mattias Granlund
2b33b79d48 Fix lint 2024-05-23 10:58:59 +02:00
Mattias Granlund
021180d8f1 Rename function 2024-05-23 10:58:59 +02:00
Mattias Granlund
af4833f091 Fix a few bugs 2024-05-23 10:58:59 +02:00
Mattias Granlund
cd419eca67 Refactor how we merge in commits from branch upstream
- send change_id to frontend for `RemoteCommit`
- split up massive function into three
- add a couple of checks to prevent unexpected state
- rebase if force push allowed (needs toggle)
2024-05-23 10:58:59 +02:00
Mattias Granlund
ed14ddf378 Simplify function with ? shorthand 2024-05-23 10:58:59 +02:00
Mattias Granlund
8b7e12e472 Remove explicit error type for merge_virtual_branch_upstream 2024-05-23 10:58:59 +02:00
Sebastian Thiel
e3b8e2a5e5
fix: assure commit.gpgsign is detected correctly
Avoid stringly comparison for what is definitely a boolean
[as per the configuration](https://git-scm.com/docs/git-config#Documentation/git-config.txt-commitgpgSign).
2024-05-23 10:18:35 +02:00
Kiril Videlov
b8dfcf7a82
Merge pull request #3822 from gitbutlerapp/revert-3820-oplog-diff-optimization
Revert "fixes incorrect snapshot diff"
2024-05-23 03:31:00 +02:00
Kiril Videlov
651a55d3fb
Revert "fixes incorrect snapshot diff" 2024-05-23 03:17:34 +02:00
Kiril Videlov
c3a18ef2b0 feat(oplog): Improve lines_since_snapshot by using tree-to-tree comparison
This fixes an issue where snapshots are auto-created too often erroneously
2024-05-23 02:46:40 +02:00
Kiril Videlov
3517419090 fixes incorrect snapshot diff 2024-05-23 01:10:28 +02:00
Kiril Videlov
9dbebba5df refactor: Improve error handling in branch_to_remote_branch() and list_remote_branches() functions 2024-05-22 14:20:41 +02:00
Kiril Videlov
660d296745
Merge pull request #3814 from gitbutlerapp/update-change-selected-for-changes-branch
fix: Use old branch name instead of selected_for_changes in Snapshot creation
2024-05-22 12:32:46 +02:00
Kiril Videlov
f68ce21962 fix: Use old branch name instead of selected_for_changes in Snapshot creation 2024-05-22 12:20:59 +02:00
Caleb Owens
f2471734b4 Fix timestamp compensation 2024-05-22 12:17:04 +02:00
Scott Chacon
8b7fe790e5 return all local branches as well as remote ones
also deduplicate them in the branch listing
2024-05-22 10:45:29 +02:00
Kiril Videlov
eda9651bf9
Merge pull request #3800 from anaisbetts/no-dosbox-on-sign
Don't show command prompt when commit signing is enabled
2024-05-21 23:33:22 +02:00
Kiril Videlov
9f318626f8
Merge pull request #3737 from anaisbetts/flushable-debounce
Avoid file locks by being smarter about when we try to rebuild our information
2024-05-21 13:47:54 +02:00
Ani Betts
a47ebbc22d
Don't show command prompt when commit signing is enabled 2024-05-21 12:04:41 +02:00
Mattias Granlund
21e98fd9f2 Simplify getting default target
- remove try function in favor of returning error
- drop unused function
2024-05-21 12:02:38 +02:00
Anaïs Betts
d23ca10028
Bring back tempfile moves 2024-05-21 10:36:22 +02:00
Ani Betts
12143b0a54
Embrace your Chill, cargo 2024-05-21 10:39:00 +02:00
Ani Betts
b4b0de6a3c
Merge remote-tracking branch 'upstream/master' into flushable-debounce
* upstream/master: (85 commits)
  History and minor UI fixes (#3797)
  History fixes (#3796)
  make GitGuardian happy
  bump playwright version
  add vitest exclude for node_modules
  Remove unused exports from ipc
  Update auth.ts to use absolute import
  Use correct invoke function
  setup for async tasks on oplog update
  formatting
  save and restore the gitbutler/integration branch
  remove unneccessary CSPs
  Fix ollama request security
  fix: forgot the port
  feat: Set default snapshot lines threshold to 20 when undefined
  fix: Updated connect-src to allow local connections for ollama
  Minor tweaks to CSS and use real branch name
  Unmount history component when hidden
  Fix bug leaving PR button visible
  Small refactor of history component
  ...
2024-05-21 10:29:42 +02:00
Kiril Videlov
662a62c2f2 setup for async tasks on oplog update
As we start building out code collaboration we wanna have the ability to push gitbutler state to, when enabled
2024-05-19 15:53:27 +02:00
Scott Chacon
18de60740b formatting 2024-05-19 07:24:15 +02:00
Scott Chacon
2a89fa6b93 save and restore the gitbutler/integration branch
when we save the snapshots, save and restore the integration branch commit properly so we don't get in a weird state after restore
2024-05-19 07:07:55 +02:00
Scott Chacon
733780f302 reformat 2024-05-17 15:16:04 +02:00
Scott Chacon
dcc1b37331 rewrite our oplog tests 2024-05-17 15:11:19 +02:00
Scott Chacon
1cbcbb3478 change the oplog file name
this is both to be a little more clear, but mainly to reset users from the previous logic
2024-05-17 15:11:19 +02:00
Scott Chacon
62e9a80512 add logic for the first parentless snapshot 2024-05-17 15:11:19 +02:00
Scott Chacon
0f3005e467 first pass at new oplog tree builder
creates a work tree and properly restores
note
2024-05-17 15:11:19 +02:00
Kiril Videlov
74fe02f109 feat: Add support for setting snapshot_lines_threshold in UpdateRequest 2024-05-17 12:44:20 +02:00
Ani Betts
2ff2b1f7ec
Format 2024-05-15 20:27:26 +02:00
Ani Betts
69cf9c8058
Don't use HOME env var
This environment variable doesn't exist on Windows
2024-05-15 17:39:23 +02:00
Ani Betts
1695ad5c53
Add dirs crate 2024-05-15 17:39:00 +02:00
Scott Chacon
5becf4e6a6
small fixes 2024-05-15 15:24:08 +02:00
Scott Chacon
b0c5c07a57
some change-id based tests 2024-05-15 15:21:19 +02:00
Scott Chacon
2ce4e5bfd0
remove a bunch of debugging 2024-05-15 14:48:26 +02:00
Scott Chacon
d267dbc77d
rust is not my favorite language 2024-05-15 13:40:27 +02:00
Scott Chacon
a23253e57d
who committed this? 2024-05-15 11:14:05 +02:00
Scott Chacon
9e817b4d04
Merged origin/master into add-commit-id 2024-05-15 10:43:34 +02:00
Scott
520d95aef2 merge upstream 2024-05-14 14:07:09 +00:00
Kiril Videlov
e93ddfac34
snapshot of restores keeps more metadata 2024-05-14 16:04:02 +02:00
Kiril Videlov
8bae084518
snapshots for move hunk include branch name 2024-05-14 14:55:27 +02:00
Kiril Videlov
631bc86031
snapshots of (un)appy branches contains name 2024-05-14 14:35:47 +02:00
Scott Chacon
4cde9ce71d
windows doesn't have permissions like this 2024-05-14 13:43:49 +02:00
Scott Chacon
202c551bc7
remove signing setting 2024-05-14 13:15:11 +02:00
Scott Chacon
b5c9f934d5
supporting gpg.ssh.program 2024-05-14 11:57:23 +02:00
Scott Chacon
d944cad533 merge upstream
temp
2024-05-14 10:25:29 +02:00
Scott Chacon
f106bfa246
basic ssh signing too 2024-05-14 10:08:22 +02:00
Kiril Videlov
80148f50fe
add sha to undo commit snapshot 2024-05-13 16:37:37 +02:00
Kiril Videlov
8849c9845e
add sha to commit snapshot 2024-05-13 16:24:40 +02:00
Scott Chacon
b17ab37a01
actually run gpg if specified 2024-05-13 16:19:45 +02:00
Kiril Videlov
06dfc95692
add message trailer for commit snapshots 2024-05-13 01:07:42 +02:00
Kiril Videlov
81e948774f
fix test 2024-05-12 23:42:04 +02:00
Kiril Videlov
336c7cb9bc
enable the new oplog snapshotting by default 2024-05-12 22:36:27 +02:00
Kiril Videlov
f8023ca735
refactor snapshotter trait
Implementing this on branch turned out ot be restrictive so implementing for Oplog
2024-05-12 19:57:42 +02:00
Kiril Videlov
262bbd8df7
on snapshot store branch name metadata 2024-05-12 19:49:51 +02:00
Kiril Videlov
d52a7f5e4f
fix an issue with incorrect snapshot metadata on branch update 2024-05-12 19:18:03 +02:00
Kiril Videlov
0a12b3eac5
remove unused crates in core 2024-05-12 04:12:56 +02:00
Kiril Videlov
5b3273f542
remove unused sessions / deltas implementation
This is removed in favor of the new `ops` module
2024-05-12 03:39:04 +02:00
Kiril Videlov
27f0802443 remove gb_reference from projects 2024-05-12 03:08:54 +02:00
Kiril Videlov
18cf10a143
remove unused fetch_gb_data 2024-05-12 02:13:02 +02:00
Kiril Videlov
bca8e13dfb
remove unused push_gb_data 2024-05-12 02:05:07 +02:00
Kiril Videlov
2bbe4fa569
remove unused list_deltas endpoint 2024-05-11 21:12:08 +02:00
Kiril Videlov
14a7e8b2a1
remove unused list_sessions 2024-05-11 20:58:14 +02:00
Scott Chacon
4d542330c5 merge stuff 2024-05-11 11:43:06 +02:00
Kiril Videlov
9e5094247b
fix rust clippy error 2024-05-09 11:33:32 -07:00
Kiril Videlov
58c124627a
add an enpoint for getting the snapshot diff 2024-05-09 11:24:42 -07:00
Josh Junon
2006511a80
Merge pull request #3724 from gitbutlerapp/fork-exec-sign
add gitbutler_git::sign_commit()
2024-05-08 12:28:22 +02:00
Mattias Granlund
e7f25e29c5 Check we are on the right branch in verify_branch
Ensures we don't accidentally run commands while HEAD is pointing to something other than the gitbutler/integration branch.
2024-05-08 12:20:00 +02:00
Josh Junon
738e47a377
fix sync sign utility 2024-05-08 12:16:06 +02:00
Kiril Videlov
e6633df481
feat: Optimize snapshot creation in Oplog.rs
Check for differences between the current tree and the parent tree
before creating a new snapshot to prevent creating noop snapshots.
2024-05-08 03:12:17 +02:00
Kiril Videlov
903991eea7
use default snapshot_lines_threshold 2024-05-08 02:58:30 +02:00
Kiril Videlov
7cddab8285
fix early return missing snaposhotting 🤦‍♂️ 2024-05-08 01:35:11 +02:00
Kiril Videlov
a942cb6f79
move snapshot creation on branch update to trait 2024-05-08 01:09:53 +02:00
Kiril Videlov
93d5e61530 rename module snapshots to ops 2024-05-08 00:29:38 +02:00
Kiril Videlov
289aafb496 rename snapshoter to snapshot 2024-05-08 00:29:38 +02:00
Kiril Videlov
2c065a602e rename module of oplog trait 2024-05-08 00:29:38 +02:00
Kiril Videlov
f6e19e6c12
compose traits for nicer snapshotting functions 2024-05-08 00:00:18 +02:00
Mattias Granlund
e0a2985f37 Fix background switching between target.sha and integration commit 2024-05-07 16:59:06 +02:00
Josh Junon
ca714084b1
add synchronous signed git commit utility function 2024-05-07 16:37:52 +02:00
Josh Junon
1fd0b1ecfc
make askpass broker a global 2024-05-07 16:07:37 +02:00
Scott Chacon
51f9769024 sign commits with real git
in the strangest possible way
2024-05-07 15:15:25 +02:00
Scott Chacon
ff11fcdb90 Add change-id property to commit
Each commit has a change-id added to it's header field so we can more easily track patches by unique ids
2024-05-07 10:28:29 +02:00
Kiril Videlov
1bc41a9146 snapshot list pagination 2024-05-07 00:46:22 +02:00
Kiril Videlov
80346af154 fixes a possible condition where if integration commit is not found a lot of integreated commits are added to a vbranch 2024-05-07 00:02:22 +02:00
Caleb Owens
f13e827e33 Don't reparse branch_id
This should make the situation where an error occurs even more absurd. It should also be saving some extra work which is always a bonus
2024-05-06 19:50:07 +01:00
Josh Junon
dce8ead62f
use simpler virtual branch handle fetch in tests (and fix strange uncaught compilation error) 2024-05-06 20:22:40 +02:00
Josh Junon
da62926a30
simplify retrieving of the vb_state handle 2024-05-06 20:08:28 +02:00
Josh Junon
85d045362a
remove useless AsRef impl 2024-05-06 20:07:47 +02:00
Josh Junon
dffca846c4
remove empty else branch 2024-05-06 20:07:42 +02:00
Josh Junon
58f866d588
simplify certain uses of as_ref() in virtual.rs 2024-05-06 20:07:39 +02:00
Josh Junon
d6baf7d8f0
simplify hunk hash diff calls 2024-05-06 20:07:34 +02:00
Josh Junon
21dd4800c3
fix typo: timestam_ms -> timestamp_ms 2024-05-06 20:04:29 +02:00
Kiril Videlov
98e511c459 fixes a bug where after updating the workspace the app shows infinite spinner 2024-05-06 18:20:09 +02:00
Kiril Videlov
0091bfa1eb
Merge pull request #3688 from gitbutlerapp/resolve-large-quantity-of-files-slow-start
Optimize list_virtual_branches
2024-05-06 16:43:30 +02:00