Source Control Training [closed]
Asked Answered
B

3

6

I am sure everyone knows that Source Control is a core component of responsible software development. Like software development practices most organisations have differing policies and procedures in working with their chosen Source Control Management Tool; Subversion, GIT, TFS, etc.

My question is around how you provide training for new and existing staff in the area of Source Control management? Do you provide staff documentation, videos, brown bag sessions, formal training from an accredited provider or something else?

Boletus answered 9/11, 2010 at 9:3 Comment(1)
good question! post it in programmers.stackexchange.com for excellent answers...Winthrop
N
4

The training I give (one formal training, with some slides) is mainly centered around the release management process.

It means I don't so much show the basic function of the VCS we use (the user figure them out pretty quickly anyway), but I insist on how the VCS features are used to produce a release (which is what all the development is about: if you don't ship something in production, the all game is kind of pointless)

So:

  • when should you branch and why?
  • when should you merge and why (not so much how)?
  • where your deliveries (binaries, war, jar,ear) should go (hint: not in a VCS)
  • where should you get all your dependencies.

In other word, I try to insist on how the VCS is not an extra obstacle to manage, but one of the tool there to facilitate the next release.

Note: this is an enterprise-centric point of view (where many internal projects depend on many other internal projects), and can be very different from a decentralized open-source development project (where a project is often -- not always -- monolithic, with only libraries external dependencies).

Nutwood answered 9/11, 2010 at 9:10 Comment(2)
Thanks for the answer - am I correct in reading from your answer that you give your guidance/training as a one on one session?Boletus
@Kane: yes, I just edited my answer: 4 hours, a powerpoint presentation centered around our release management practices (not something you could easily reuse outside of our "particular" environment.Nutwood
F
1

Within our organization, we identified two groups of SCM "consumers," and tailored our training to each of those groups.

SCM Coordinators are expected to know not only what we do with SCM, but why we do it. There's an expectation that they understand our branching methodology, and that they know how to do merges within the tool and at the command line. They are our first line of defense in the development trenches.

Developers are expected to know how to "get", "check out," and "commit." They should have a high level understanding of our branching methodology so they know which branches to work in, and they need to know how to use the integrated SCM UI to interact with the repository.

Our SCM Coordinators were somewhat hand-picked senior people, and we gave (and continue to give) them close one-on-one assistance to help them learn.

Our Developers get a PowerPoint deck and (hopefully) some one-on-one time with their SCM Coordinator. I think the developer PowerPoint deck is about 15 pages of 18-point type.

Thus far, this has worked out pretty well. My main recommendation is to make sure you don't overwhelm people with the SCM details if they don't need to know it. I've noticed the average person glazes over and dozes off within about 5 minutes of SCM discussion.

Fascism answered 9/11, 2010 at 13:27 Comment(0)
C
0

What kind of training are you looking for? Specific to you polices or to your source control system?

If you want an general overview check out Eric Sink's Source Control HOWTO. It is older so I don't think distributed version control is covered.

Clove answered 19/11, 2010 at 21:4 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.