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

Feature request Full support fot GIT in Browser #145

Open
7 tasks
charlypa opened this issue Oct 22, 2021 · 0 comments
Open
7 tasks

Feature request Full support fot GIT in Browser #145

charlypa opened this issue Oct 22, 2021 · 0 comments
Labels
core Core features enhancement New feature or request

Comments

@charlypa
Copy link
Contributor

charlypa commented Oct 22, 2021

Pheonix should support all features of GIT in the Browser without backed support. Brackets earlier had brackets-git extension that requires node runtime and git installed. But this will not work for Phoenix as client side web is the main target for Phoenix IDE. See the available technologies section below for options.

Phoenix is based on a virtual file system that presents a UNIX-like file system to the browser backed by indexedDB or fs access API. the filesystem is exposed by a nodejs fs like library that is partially compliant to node fs lib. This virtual filesystem is available within all contexts(main thread, workers, service workers) as it is backed by indexed db and presents full support for change watchers.

We need to thread this virtual file system, to the isomorphic git to make git happen in the browser in Phoenix IDE.

Feature requirements Phase 1

The brackets git extension can be adapted to the web using isomorphic-git library to provide a pure browser native git client. The following features are targetted:

  • Git project changes panel GUI. image
  • Git file change markings in the editor. image
  • Git history panel.
    image
  • Git commit. image
  • Commit details page:
    image

Feature requirements Phase 2

  • Git push workflows
  • Native Git support in native builds.

Available technologies

Isomorphic Git is a pure JavaScript reimplementation of git that works in both Node.js and browser JavaScript environments. It can read and write to git repositories, fetch from and push to git remotes (such as GitHub). We should be able to leverage this to provide pure browser-based git IDE features.

Related issues:

#697

@abose abose added the enhancement New feature or request label Oct 22, 2021
@abose abose changed the title Feature request Full support fot GIT Feature request Full support fot GIT in Browser Dec 24, 2022
@abose abose added the core Core features label Dec 24, 2022
@abose abose moved this to Todo in Git Integration Nov 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
core Core features enhancement New feature or request
Projects
Status: Todo
Development

No branches or pull requests

2 participants