Choosing a version control system for a simple web site
We're bringing some of our web development in-house and one of my goals is to get it under version control. Right now I'm looking mostly towards HG and Git, respectively. Bazaar was knocked out of the running due to some flaky behavior.
The biggest points on my mind are:
- Access to our web host is FTP-only. This worries me a bit.
- The people that will be handling everything are not developers, so I need a good simple way to set things up; A good GUI is a necessity.
- A distributed model is important as our designer is not connected directly to our network and will be trading files on a thumb drive for the moment, if not permanently.
- Our designer is on a Mac. Everyone else is on Windows.
I've got a few questions as well:
- I know it's possible to publish a branch via FTP from most systems. Is it possible to do anything else (revert, etc.)?
- Git support on Windows was previously known to be horrible. It appears that things have gotten quite a bit better, though. Are things likely to keep progressing well?
- With TortoiseHG, how do you move a versioned file? Moving it normally doesn't work (as开发者_JAVA百科 expected), but there doesn't seem to be an "HG Move" option.
This is going to be a very opinionated answer section. I will still say that Hg has better windows support. I do prefer Git from a back-end and technical standpoint, but the frontends are still quite lacking. There is no API support and the only way to interact with it is via parsing console io. Really, it all comes down to personal preference. It doesn't quite matter what you choose, they will both suite you wonderfully compared to traditional methods.
Now, as for your questions
- With regards to FTP-only hosting, I'm
not entirely sure how that would
work. If your repository must be
accessible from the outside and you
are not able to setup your own server
to host it, I would use a service
such as BitBucket or GitHub.
BitBucket comes with one private
repository for each free account, so
you could keep your work in there. Mercurial is also bundled with the tools required for hosting. You can literally have a dev fire off
hg serve
and an http server will spawn for you viewing pleasure. This is completely doable with Git, but will require some configuration. - Git support on windows HAS gotten much better, but it is still pretty far behind Hg imo. I suggest you look what applications you would like your version control to integrate with and see if they support hg or git. That may very well be the deciding factor.
- With TortoiseHG you rename a file by right-clicking on it and selecting TortoiseHG... -> Rename File.
Again, I simply suggest you do your homework. Both will work great. It's just a matter of personal preference and supported applications at this point.
精彩评论