Le 23/07/2014 00:05, Gilles a écrit : > On Tue, 22 Jul 2014 10:01:44 -0700, Phil Steitz wrote: >> Looks like other projects are running VOTEs to ensure there is >> consensus for this action and including references to VOTE threads >> in INFRA JIRAs. Lets do this. The action I am proposing is that we >> request a new ASF git repo, make the current svn repo read-only >> (adding a README to make it clear) and change github mirroring to >> use the git repo. Votes, please. This vote will close in 72 >> hours. Note that this VOTE applies only to [math], i.e. >> http://svn.apache.org/repos/asf/commons/proper/math. >> >> [ ] +1 go for it >> [ ] +0 OK, but... >> [ ] -0 Not happy about this, because... > [X] -1 We should not do this if that means that I have to know how > to use "git" within the next 72 hours. > > Please clarify the migration planning, including the necessary transition > for complete newbies (e.g. a summary of how to perform the equivalent of > such basic tasks as "svn co", "svn add", svn del", "svn commit", > "svn diff").
There is an extensive tutorial for git as the Git book: <http://www.git-scm.com/book> For a quick reference, here is a cheet sheet for subversion users: <http://www.git-tower.com/blog/git-for-subversion-users-cheat-sheet-detail/> For an even quicker reference on the most used commands, here is a mapping : Concerning the other commands, here are some hints: svn co ---> git clone svn add ---> git add svn rm ---> git rm svn commit ---> git commit, then git push (rationale explained below) svn diff ---> git diff svn update ---> git pull >From my own experience, the first thing to understand for the difference between subversion and git is that in the later there is a separation between "committing" a change, and "pushing" it to the reference remote repository. The reason this is a two-stage process in git is that there are many different repositories and when you "commit" you do it on your local repository, which is on your own hard drive. So after this first step, the only person who can see the change is the one who can see this local repository: you. If you want other people to see your change, you have to perform the second step and "push" your repository to a reference one shared with other developers (i.e. in our case the one on Apache infrastructure). This difference seems at first cumbersome for a subversion user, and at the beginning we always forget to push and don't understand why people do not see our commits. After some time, it appears really a good thing, as it allows to work locally using full source code versioning features without any risk of breaking things on the main shared repository. best regards, Luc > > > Thanks, > Gilles > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org > For additional commands, e-mail: dev-h...@commons.apache.org > > --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org