If your interested in a Git based platform then I would highly recommend, GitLab, GitHub, or even Bitbucket. All these platforms use Git at their core and support all core features of Git. However when you are on their site and working from their platform they all offer unique set of tools to collaborate on a project.
If you are just ramping up, I would still recommend GitHub. Even though there are things in the GitHub UI that tend to confuse new comers, it is still home thousands upon thousands of repositories for people to view publicly.
As far as contributing code, I think understanding the fundamentals of Git will be vital in getting the most out of any platform. I’m actually relatively new to this site, but I’m sure there are courses to cover Git basics. If you’re hung up on any specific terms or “how you do something” in Git, but don’t know the right words. Just come and post here for help.
The most confusing thing I found in Github / GitLab / Bitbucket was the concept of a pull request.
This is how you actually make suggestions to people’s code. So you fork their repo (basically you copy theirs into your own repo so you can make changes). Then you make your changes. Last you submit a pull request to the original author. This essentially is asking the author to 1) review your changes 2) Pull your changes to the code into their code base.
I looked at Gitpod briefly and it seems to just be another layer added to Github.
As far as sharing credentials, you can use a reputable password manager like https://www.lastpass.com which allows you to safely share credentials with other users.
On a final note, I’ve not found a platform that offers *exactly what you are looking for, but several platforms offer use of plugins, or integrations with 3rd party tools and usually in the end you can end up with what you want. I think most offer a baseline of features with the ability to shape your experience, just as long as you stay within the confines of how Git works. Co-editing is one that I found interesting, and I’m not sure you would see that with a Git based platform, because one of the goals of Git is to isolate and track changes, and it would be difficult for two users to touch the same file, and for git to know who’s changes to keep.
Well, I know this was a lot, but hope it helps. If it possibly sparks more questions or discussion feel free to shoot a reply back! Have a great day!