Is Git a good version control system for web development (HTML/CSS/Javascript) on a corporate project?
Asked Answered
S

3

8

I'm currently involved in a large project - the redevelopment of a corporate website.

The project involves many staff across several teams (content, design, etc).

There is a small team (myself and another developer) in charge of the front-end/presentation layer of the system - that is - the development of templates using HTML, CSS and Javascript.

Code quality, iterative development and frequent testing are an important aspect of the project.

The back-end development team currently use CVS; however it's taking IT so long to give access to my team that I'm considering setting up our own version control, through say GitHub.

Would Git bring any particular benefits to front-end development in this environment?

(I understand the basic principles of Git; the other developer doesn't have any experience with it, but would be happy to pick it up.)

Sandon answered 21/6, 2010 at 0:22 Comment(4)
Git will not help solve your corporate dysfunction.Soluble
It is important to note that Git (and the other front-running Distributed VCS, Mercurial) do not need a hub - or central repository. It is quite content living on the machines of the two developers, especially within a closed corporate intra-net. An central repository brings some benefit, but unlike CVS is by no means a requirement.Jack
@Greg, true that, but insofar as it isn't a violation of corporate IT policy, it allows people to get SCM done without administrative overhead.Jack
@greg, @msw: The managers I'm working with are very open to new ideas and innovation. Using Git will be a great way of bypassing the lengthy process off connecting to the internal CVS system. I guess I'm looking for additional reasons for/against using Git, so I can justify it to management.Sandon
H
9

git will be no less appropriate for a corporate environment than something like CVS or SVN. There is nothing in the design or implementation that makes it inappropriate for the corporate environment.

You'll probably end up using a hybrid approach: each developer will have a local git repository and will push back to an internal origin (a central spoke) to keep with the corporation's backup policies and to give the the boss that warm and fuzzy, 'my code is safe' on the repository.corpration.com machine. As you mentioned, github can act as your origin.

Have a look at http://en.wikipedia.org/wiki/Git_(software)#Projects_using_Git for a list of large organizations (open source and non-open source) using git.

Also take a look at http://www.youtube.com/watch?v=4XpnKHJAok8 and pay particular attention when Linus tells Google that their current revision control system sucks and that they'd be much better off with git.

Hamfurd answered 21/6, 2010 at 2:14 Comment(0)
J
3

Given your comment about IT CVS inefficiencies and managerial support for ad-hoc DVCS, here's a great reason:

I don't even touch my own code without VCS, let alone try to work collaboratively and thanks to SCCS, RCS, P4 and Hg, have never had to.

Writing code without VCS is like writing with disappearing ink, perhaps worse, as you can tell when ink has disappeared.

Jack answered 21/6, 2010 at 2:7 Comment(1)
Very true. This isn't something to be lightly at all. It's VCS or nothing; asking developers to work without some form of versioning is like asking a swimmer to swim with handcuffs on!Sandon
L
1

I would think it would work well. With appropriate branching and perhaps cherry-picking, it's also easy to use it to maintain local dev code with deployment patches.

Leath answered 21/6, 2010 at 0:57 Comment(1)
I really like the flexibility of being able to do check ins and merges frequently. I think it's well suited to this environment, since we often have to do prototyping and bug fixes in a changing environment, and it's great to have every step of the process checked in.Sandon

© 2022 - 2024 — McMap. All rights reserved.