In my company, we have a subversion server, and everyone uses subversion on their machines. However, I would like to use git, making changes locally, and then “pushing” them when I'm ready.
However, I cannot understand what happens in the following situation. Let's say that I made 3 git locally, and now I'm ready to "push" everything on the subversion server. If I understand correctly, I git svn dcommitshould basically make 3 commits sequentially on the server, right? But what happens if at the same time (say, between the second and third commit) my other colleague issues a commit? The scenarios I can think of are as follows:
1) git kind of "locks" (is this possible?), The subversion server during the commit so that my commits execute atomically, and my colleague after my
2) The commit history on the server becomes my1-mine2-other-mine3 (even if the other should fail, as my colleague does not have an updated working copy at this point).
I think this is No. 2, but perhaps the speed of the transaction is so high that it rarely becomes a problem. So which one is # 1 or # 2?
source
share