Ask HN: git-svn resources?
Hi folks,
I have used git for brief periods (as a student), and would like to continue using it, but the company I work for uses svn. I do not like svn.
I noticed that you could still use git + svn, via git-svn, where there is a 'two-tiered' commit system. I want to use this primarily to be able to make branches at will, try out code, and commit the branch if everything goes well. This process is not easy in svn.
Could you point me to resources about git-svn?
Also, it would be great if you could recommend a git book to me --- there's a lot of cool things that could be done with git, only I need to know where to look!
Thanks
9 comments
[ 3.5 ms ] story [ 11.4 ms ] threadMaybe they evaluated GIT and decided their business case suited SVN more?
You wouldnt code your stuff in PHP if they are an ASP.NET shop because you like PHP more would you? By all means try to educate them to use what you feel is a better tool, but until then suck it up and do what everyone else is doing.
Rather, everybody at his job uses Notepad and he'd like to use vim. It improves his performance and affects nobody else.
I have found in the workplace it is better to stick to what they supply and ask you to use and change it by pushing people in the right direction then to assume you know better and do your own thing.
Look at it from the employeers perspective. If you say use SVN and someone says "Pffft I will use GIT" and then they loose a days work because of it who am I going to blame?
Ever considered that you might be wrong on both counts?
Arguing that the 'main' repo has to be git is a tough sell, but I think we'll get there eventually, once we show how much easier experimental branching, disconnected operation, distributed nature etc will be advantageous to us.
The git-svn solution is pretty good, because the main repo will be svn, and people who are used to svn (and like the restrictions that come with it) will be happy as well. Git users will also be able to get all the benefits of using it..
The other alturnative is to check out using SVN, check that into GIT, do your changes as normal from here and when finished check back into SVN. You only branch and so forth on your local machine but it also ensures you dont break the main repo.