0

I have very little experience of using a version control system and my work colleagues have no experience though I would like to introduce one into our team as the current workflow (non-existent workflow) with shared directories, multiple file versions, reliance on me to make changes and no review process is eventually going to lead to a big problem.

For context we are a small team of 5 working with the Microsoft SQL Server BI Stack so have database, reporting services, integration services and analysis services projects in Visual Studio 2015. For simplicity I am focusing on the database side of things as this is the area my colleagues are mostly working with, creating SQL scripts to produce outputs. I don't want these to be stored in someone's OneDrive and would like them to be made into a database object and put under version control.

My research lead me to an answer for a similar question:

...try Mercurial

If you don't find Git approachable enough by your coworkers, try Mercurial with TortoiseHG, which is a GUI client for Mercurial. It will take them two minutes to setup and less to start using it.

Have them use the GUI, they just have to learn to use 4 buttons (pull, update, commit, push) and learn 2 or 3 concepts in order to save and share their work.

Have them register in bitbucket. Create a repository for your project, and have them fork it so they can work in their own mirror of the repository and that way they don't have to deal with merging. You do the integration and just ask them to issue pull requests from their Bitbucket fork once they've pushed. Have them pull only from your repository (the one they forked from).

Learn Mercurial yourself so that you can solve all related problems, this is a good start: http://hginit.com/

I am looking for more detail on the suggestion namely:

  • Does this type of workflow have a particular name? Is there some place I can read more about this workflow and how it works in practice.
  • Have any of you ever worked like this before, did it work for you, did you encounter any problems that I need to take into consideration?
  • Would introducing a workflow like this allow you to progress onto something more advanced in the future once more experienced with little disruption?
  • The answer suggests Mercurial, would this work equally as well using Git and the GUI in Visual Studio 2015 with Visual Studio Team Services?
  • As I would be overseeing and managing the repositories initially what areas should I be reading up on to ensure the introduction succeeds?
  • Any other practical guidance for introducing version control into our work environment than "read Pro Git"?

Whatever I use and how it works needs to be simple and does the basics well with a GUI.

1

While there are some nice GUI's other than the one included in visual studio for git it would still be best to understand the inner workings. Since this is all focused around database scripts and deployments, you may also be interested in checking out something like DbUp. https://dbup.github.io/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.