Re: What's the best way to make my company migrate to Git?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Daniele,

I'm a developer getting towards the end of introducing my company to Git. Here are some thoughts based on the (mis)steps I took.


I found that advocating specific steps wasn't that effective - I just came across as being pushy and hard to work with. It was more effective to politely show off what I could do with git-svn, and let people get jealous enough to work the "how" out for themselves. Here are some examples:

I would quietly bisect a hard-to-fix bug, then say "if it's any help, git tells me it was introduced by so-and-so in revision N". Sometimes it was no help, but sometimes it was enough to provoke the appropriate "aha!" for the bug.

I would nonchalantly use as many git features as I could while showing people my work. So "here's the diff for my work... grr whitespace ... hang on I'll add `-w`... anyway, these are the REAL differences...". The fact it was all in glorious technicolour went without mention.

When we had a big merge that nobody was looking forward to, I said "let me do it! It'll give me a chance to practice my git-fu".

When I used svn on somebody else's command-line, I'd blame the mistakes I made on being spoiled by Git. So "I'll just do an `svn log`... argh no! Control-C! Control-C! Right, `svn log | less`... my bad, git pipes to less automatically."


Over the course of a few months, people became convinced that Git was something that makes you more productive. Our lead developer had a go with git-svn for a while, before our boss decided we should all make the switch.

I tried to make git-svn as painless as possible with some svn-like aliases and a cheatsheet, which I'd be happy to upload if the list could suggest a good place to put a PDF and some text.

The move worked for a while, but it turned out that one-and-a-half git experts supporting the rest of the team wasn't enough to stop people from making rookie mistakes like `git merge`ing into an SVN branch with unpushed changes. We had to accelerate our move to git on the server, and I got a lot of exercise and not much work done that month as I dashed from desk to desk.

Things gradually calmed down as people got more comfortable with git. But I expect to be occasionally called over for a long time as people learn new tricks - "how do I, like, cherry-unpick a single commit?"

	- Andrew Sayers
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]