Differences between revisions 2 and 21 (spanning 19 versions)
Revision 2 as of 2015-07-20 15:36:52
Size: 394
Editor: ZekeKaufman
Comment:
Revision 21 as of 2016-07-01 10:53:59
Size: 1624
Editor: ZekeKaufman
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== Checkout out the main branch: == == Initial Git Setup (just do once) ==
Line 3: Line 3:
'''CVS''' Configuration settings:
Line 5: Line 5:
export CVSROOT=/space/repo/1/dev
cvs checkout dev
$> git config --global user.name "John Doe"
$> git config --global user.email johndoe@nmr.mgh.harvard.edu
Line 9: Line 9:
'''git''' Checkout out the main branch:
Line 11: Line 11:
git clone /space/freesurfer/repo/freesurfer
$>
git clone /space/freesurfer/repo/freesurfer
(remotely)
$>

$> cvs checkout dev
Line 13: Line 18:
Line 17: Line 23:
# CVS
expor
t CVSROOT=/space/repo/1/dev
cvs checkout -r stable6 dev
$> git clone -b stable6 /space/freesurfer/repo/freesurfer

$>
cvs checkout -r stable6 dev
Line 22: Line 28:
{{{
# git
git clone -b stable6 /space/freesurfer/repo/freesurfer
}}}
== Daily Workflow ==
Line 28: Line 31:
Replace a data file: Commit a modified source code file:
||'''cvs'''||{{{cvs commit -m "Added new capabilities." <file_name>}}}||
||<|2>'''git'''||{{{git commit -m "Added new capabilities." <file_name>}}}||
||{{{git push}}}||

Modify and commit a data file:
||'''cvs'''||{{{cvs commit <file_name>}}}||
||<|4>'''git'''||{{{git annex unlock <file_name>}}}||
||{{{git annex add <file_name>}}}||
||{{{git commit <file_name>}}}||
||{{{git push}}}||
||{{{git annex copy --to origin <file_name>}}}||

Add a data file:
||<|2>'''cvs'''||{{{cvs add <file_name>}}}||
||{{{cvs commit <file_name>}}}||
||<|4>'''git'''||{{{git annex add <file_name>}}}||
||{{{git commit <file_name>}}}||
||{{{git push}}}||
||{{{git annex copy --to origin <file_name>}}}||


Remove data file:
||<|3>'''cvs'''||{{{rm <file_name>}}}||
||{{{cvs rm <file_name>}}}||
||{{{cvs commit -m "Removing <file_name>" <file_name>}}}||
||<|2>'''git'''||{{{git rm <file_name>}}}||
||{{{git commit -m "Removing <file_name>" <file_name>}}}||

Undo 1 commit (before push):
||'''git'''||{{{git reset --soft HEAD~1}}}||
Undo 2 commits:
||'''git'''||{{{git reset --soft HEAD~2}}}||

Initial Git Setup (just do once)

Configuration settings:

$> git config --global user.name "John Doe"
$> git config --global user.email johndoe@nmr.mgh.harvard.edu

Checkout out the main branch:

$> git clone /space/freesurfer/repo/freesurfer
(remotely)
$> 

$> cvs checkout dev

Checkout the stable branch:

$> git clone -b stable6 /space/freesurfer/repo/freesurfer

$> cvs checkout -r stable6 dev

Daily Workflow

Commit a modified source code file:

cvs

cvs commit -m "Added new capabilities." <file_name>

git

git commit -m "Added new capabilities." <file_name>

git push

Modify and commit a data file:

cvs

cvs commit <file_name>

git

git annex unlock <file_name>

git annex add <file_name>

git commit <file_name>

git push

git annex copy --to origin <file_name>

Add a data file:

cvs

cvs add <file_name>

cvs commit <file_name>

git

git annex add <file_name>

git commit <file_name>

git push

git annex copy --to origin <file_name>

Remove data file:

cvs

rm <file_name>

cvs rm <file_name>

cvs commit -m "Removing <file_name>" <file_name>

git

git rm <file_name>

git commit -m "Removing <file_name>" <file_name>

Undo 1 commit (before push):

git

git reset --soft HEAD~1

Undo 2 commits:

git

git reset --soft HEAD~2