intersystems / git-source-control

Server-side source control hooks for InterSystems' platforms to facilitate use of git, especially in shared and/or remote development environments and for interoperability graphical editors
12 stars 8 forks source link

Remote development and multiple users #613

Open raszkiewicz opened 3 hours ago

raszkiewicz commented 3 hours ago

I was expecting that each user could have their own temp folder for the namespace, but it looks like I have missed something in the configuration. User B can see my path and SSH Private Key file as well as work off my branch when he should work off his own branch (when I switch branch his branch got switched too because points to that universal folder)

Looks like the Temp folder for this namespace is a universal location which will not work for multiple users' remote collaboration. In the Studio, each of the developers has a remote git folder from where is working. I thought this extension would allow a similar configuration.

isc-tleavitt commented 3 hours ago

@raszkiewicz there can only be one local-to-the-server repo that's the source of truth for a given namespace. The common approach is to have a dedicated namespace per developer on the remote environment. It is also valid to have multiple users working against the same repo + branch and committing there simultaneously, although it's not very git-like.

When you say Studio, do you mean VSCode? Or are developers using a local instance?

isc-tleavitt commented 3 hours ago

I'd recommend watching this for a bit more info on IDEs/workflows - it's a few years old but the concepts are still very relevant: https://www.youtube.com/watch?v=natTHVfXzwY&t=3s&pp=ygUvaW50ZXJzeXN0ZW1zIGRldmVsb3BlciBjb21tdW5pdHkgc291cmNlIGNvbnRyb2w%3D

raszkiewicz commented 2 hours ago

@raszkiewicz there can only be one local-to-the-server repo that's the source of truth for a given namespace. The common approach is to have a dedicated namespace per developer on the remote environment. It is also valid to have multiple users working against the same repo + branch and committing there simultaneously, although it's not very git-like.

The problem is that our setup wasn't set that way as a dedicated namespace per the developer. We have set namespaces related to the message flows (aka Shared Development Instance from provided video)

When you say Studio, do you mean VSCode? Or are developers using a local instance?

I mean InterSystems Studio IDE

After watching the provided video how can we switch to the Sever-Side Source Control using VS Code for shared development instance? I assume that git-source-control will not work in that case.

isc-tleavitt commented 2 hours ago

@raszkiewicz can you drop me an email (tleavitt at intersystems.com) and we can find a time to chat? I think that might be most effective.