googledatalab / datalab

Interactive tools and developer experiences for Big Data on Google Cloud Platform.
Apache License 2.0
975 stars 249 forks source link

how to configure ungit? #1339

Open brandondutra opened 7 years ago

brandondutra commented 7 years ago

I tried to make a ungit repro. On the first commit, I get an error because git is not configured in my container, and I'm told to run some git commands. However, as a DL user, how do I run git commands? I have to magically know to run them in a cell with "!" ?

Can we change the error message to say how to run git? Or should be build a git-config UI?

Also, some HTML is being escaped in the error message; not sure if that is us or ungit. See below. 0vkwsxdxakk

nikhilk commented 7 years ago

A git clone should be automatically setup when you create a Datalab instance, and no additional configuration should be necessary.

@yebrahim can you take a look? I think we need to do whatever streamlining is needed to not have users stumble on this -- by creating the repo clone automatically, by always taking the user to this location in the ungit UI, and I'd even go so far as to say, locking down to just this out-of-box set of capabilities.

yebrahim commented 7 years ago

This is working on GCE, but not locally. The reason this breaks locally is we don't transfer your gcloud credentials inside the container as we do when you run datalab create, so this is something we should add.

I'm also working on adding a terminal functionality, so this should help plug any holes with the current ungit experience.

nikhilk commented 7 years ago

Should we remove the Git button when running locally?

I am assuming in local mode, the best thing to do is map your local directory into the container, and use local file browser and repo clients directly.

yebrahim commented 7 years ago

Then the git experience won't be consistent, and users will have to either download a git client or learn to use cli commands. I think we should still promote the UI-based experience, plus when we get the terminal working in Datalab it should provide one more way to do this, and it'll exist on both local and remote.

nikhilk commented 7 years ago

I disagree - local is only for development purposes. So you already have local files, local git client, etc.

I should add -- this is about scoping/prioritization -- and not turning local mode into more than what is intended (for now).

brandondutra commented 7 years ago

I think local is just as important and has real use cases: it's free (no need to pay for a vm if it is not needed), you can datalab without an internet connection, and moving local files around is easy.

To resolve this bug, I think we could do up to two things

nikhilk commented 7 years ago

I think we should make local convenient -- and make it possible to map in your local file system (and git client).

I do not think we should be talking about how to configure git, because we should make that just work for the cloud case.

That said, this is a question of prioritization and clear messaging about what the local docker experience is for.