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

Add a sidebar pane and commands for project version control management #3922

Open
franknoirot opened this issue Sep 19, 2024 · 0 comments
Open
Labels
enhancement New feature or request

Comments

@franknoirot
Copy link
Collaborator

While users comfortable using version control like Git can use it today with Modeling App thanks to our plain text representation of CAD projects as folders of KCL and TOML files, having a point-and-click interface will open up that superpower to a much wider audience. Although our interface will hook into Git as the industry standard under the hood, I think we should refer to this bucket of features as "version control" to be more recognizable to non-software folks.

Rough requirements

  1. The app should be able to detect if Git is installed on the user's computer, and if not, be able to ask for permission to install it when the user first tries to use a version control feature.
    1. Alternatively, maybe we could install Git initially to guarantee its there already and has permissions?
  2. The app should allow users to initialize the project as a Git repository. This flow should let them:
    1. Set the default branch name (main as a sane default)
    2. Set a remote URL
  3. Should allow users to perform the following Git actions from the pane:
    1. Stage files and folders
    2. Mark files and folders as ignored
      1. It should ignore all non-project files by default
      2. Not sure how we could let users mark files as no longer ignored from the UI
    3. Commit with a message
    4. Push to remote
    5. Pull from remote
    6. Merge or rebase from a branch
      1. Not initially, it is too fraught with UX issues
    7. Review visual diff of files using snapshot
      1. Not initially
    8. Checkout branches

This feature relies on:

  1. Having the bottom status bar ready (partially, for branch switching/viewing button)
  2. Nothing else, that's pretty wild
@franknoirot franknoirot added the enhancement New feature or request label Sep 19, 2024
@franknoirot franknoirot added this to the v1 Modeling App Launch milestone Sep 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant