Skip to content
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

oxidize zed #1264

Open
8 of 19 tasks
Byron opened this issue Jan 25, 2024 · 0 comments
Open
8 of 19 tasks

oxidize zed #1264

Byron opened this issue Jan 25, 2024 · 0 comments
Labels
C-integrate-gitoxide "Oxidize" crates even more by replacing git2 with gitoxide

Comments

@Byron
Copy link
Owner

Byron commented Jan 25, 2024

https://github.com/zed-industries/zed

Diffing

  • blob-diff based on two buffers
  • diff-delta (probably works via imara diff already, but exact format is unclear)
  • line-stats
  • hunk by index (probably works via imara-diff, but needs validation)

Status

What matters is that the information is complete - maybe they'd use plumbing for this. A trait exists to make other backends easier.

  • index-and-worktree, filtered by pathspec (i.e. subdir or single-file filter)
  • commit-and-index (by path)
  • status of worktree file (to get untracked, conflicts, ETC)

Other

  • open thread-safe repo
  • current branch name
  • list branches
  • crate a new branch
  • rename branch (no native support, must be deletion and creation), unclear if rename should be native rather than having a transaction with delete and create.

For tests

  • init non-bare
  • add file to index and write it back (git add)
  • git rm --staged
  • git commit - write tree from index (!), create commit
  • git stash
  • git reset --soft <commit>
  • git status - for paths and their status
@Byron Byron created this issue from a note in Collaboration Board (Oxidization) Jan 25, 2024
@Byron Byron added the C-integrate-gitoxide "Oxidize" crates even more by replacing git2 with gitoxide label Jan 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-integrate-gitoxide "Oxidize" crates even more by replacing git2 with gitoxide
Projects
Development

No branches or pull requests

1 participant