Difference between revisions of "Git svn"
Line 5: | Line 5: | ||
Now add this as a private remote, by setting the remote name '''hub'''. | Now add this as a private remote, by setting the remote name '''hub'''. | ||
− | md relax_trunk | + | # Windows |
− | cd relax_trunk | + | set relax_trunk="C:\WinPython27\relax\relax_trunk" |
+ | set GIT_USER_NAME="GIT_USER_NAME" | ||
+ | md %relax_trunk% | ||
+ | cd %relax_trunk% | ||
+ | # Linux | ||
+ | bash ; | ||
+ | relax_trunk=$HOME\relax\relax_trunk | ||
+ | GIT_USER_NAME="GIT_USER_NAME" | ||
+ | mkdir -p ${relax_trunk} | ||
+ | cd $relax_trunk | ||
+ | |||
git init | git init | ||
− | git remote add origin https://GIT_USER_NAME@github.com/nmr-relax/relax_trunk.git | + | # Windows |
− | git remote add hub https://GIT_USER_NAME@github.com/GIT_USER_NAME/relax_trunk.git | + | git remote add origin https://%GIT_USER_NAME%@github.com/nmr-relax/relax_trunk.git |
+ | git remote add hub https://%GIT_USER_NAME%@github.com/%GIT_USER_NAME%/relax_trunk.git | ||
+ | # Linux | ||
+ | git remote add origin https://${GIT_USER_NAME}@github.com/nmr-relax/relax_trunk.git | ||
+ | git remote add hub https://${GIT_USER_NAME}@github.com/${GIT_USER_NAME}/relax_trunk.git | ||
+ | |||
git fetch origin | git fetch origin | ||
git checkout --track origin/master | git checkout --track origin/master | ||
git fetch hub | git fetch hub | ||
Now we add the user scripts repo | Now we add the user scripts repo | ||
− | git clone https://GIT_USER_NAME@github.com/nmr-relax/relax_scripts.git | + | # Windows |
+ | git clone https://%GIT_USER_NAME%@github.com/nmr-relax/relax_scripts.git | ||
+ | # Linux | ||
+ | git clone https://${GIT_USER_NAME}@github.com/nmr-relax/relax_scripts.git | ||
+ | |||
Go to https://github.com/nmr-relax/relax_scripts <br> | Go to https://github.com/nmr-relax/relax_scripts <br> | ||
Click '''Fork'''. | Click '''Fork'''. | ||
cd relax_scripts | cd relax_scripts | ||
− | git remote add hub https://GIT_USER_NAME@github.com/GIT_USER_NAME/relax_scripts.git | + | # Windows |
+ | git remote add hub https://%GIT_USER_NAME%@github.com/%GIT_USER_NAME%/relax_scripts.git | ||
+ | # Linux | ||
+ | git remote add hub https://${GIT_USER_NAME}@github.com/${GIT_USER_NAME}/relax_scripts.git | ||
== The relax_disp == | == The relax_disp == | ||
Line 25: | Line 47: | ||
Now add this as a private remote, by setting the remote name '''hub'''. | Now add this as a private remote, by setting the remote name '''hub'''. | ||
− | md relax_disp | + | # Windows |
− | cd relax_disp | + | set relax_disp="C:\WinPython27\relax\relax_disp" |
+ | set GIT_USER_NAME="GIT_USER_NAME" | ||
+ | md %relax_disp% | ||
+ | cd %relax_disp% | ||
+ | # Linux | ||
+ | bash ; | ||
+ | relax_disp=$HOME\relax\relax_disp | ||
+ | GIT_USER_NAME="GIT_USER_NAME" | ||
+ | mkdir -p ${relax_disp} | ||
+ | cd $relax_disp | ||
+ | |||
git init | git init | ||
− | git remote add origin https://GIT_USER_NAME@github.com/nmr-relax/relax_disp.git | + | # Windows |
− | git remote add hub https://GIT_USER_NAME@github.com/GIT_USER_NAME/relax_disp.git | + | git remote add origin https://%GIT_USER_NAME%@github.com/nmr-relax/relax_disp.git |
+ | git remote add hub https://%GIT_USER_NAME%@github.com/%GIT_USER_NAME%/relax_disp.git | ||
+ | # Linux | ||
+ | git remote add origin https://${GIT_USER_NAME}@github.com/nmr-relax/relax_disp.git | ||
+ | git remote add hub https://${GIT_USER_NAME}@github.com/${GIT_USER_NAME}/relax_disp.git | ||
+ | |||
git fetch origin | git fetch origin | ||
git checkout --track origin/master | git checkout --track origin/master | ||
git fetch hub | git fetch hub | ||
Now we add the user scripts repo | Now we add the user scripts repo | ||
− | git | + | # Windows |
+ | git clone https://%GIT_USER_NAME%@github.com/nmr-relax/relax_scripts.git | ||
+ | # Linux | ||
+ | git clone https://${GIT_USER_NAME}@github.com/nmr-relax/relax_scripts.git | ||
+ | |||
Go to https://github.com/nmr-relax/relax_scripts <br> | Go to https://github.com/nmr-relax/relax_scripts <br> | ||
Click '''Fork'''. | Click '''Fork'''. | ||
cd relax_scripts | cd relax_scripts | ||
− | git remote add hub https://GIT_USER_NAME@github.com/GIT_USER_NAME/relax_scripts.git | + | # Windows |
+ | git remote add hub https://%GIT_USER_NAME%@github.com/%GIT_USER_NAME%/relax_scripts.git | ||
+ | # Linux | ||
+ | git remote add hub https://${GIT_USER_NAME}@github.com/${GIT_USER_NAME}/relax_scripts.git | ||
= Get future updates = | = Get future updates = |
Revision as of 10:36, 23 July 2013
Contents
relax branches at github
The relax_trunk
Go to https://github.com/nmr-relax/relax_trunk
Click Fork.
Now add this as a private remote, by setting the remote name hub.
# Windows set relax_trunk="C:\WinPython27\relax\relax_trunk" set GIT_USER_NAME="GIT_USER_NAME" md %relax_trunk% cd %relax_trunk% # Linux bash ; relax_trunk=$HOME\relax\relax_trunk GIT_USER_NAME="GIT_USER_NAME" mkdir -p ${relax_trunk} cd $relax_trunk
git init # Windows git remote add origin https://%GIT_USER_NAME%@github.com/nmr-relax/relax_trunk.git git remote add hub https://%GIT_USER_NAME%@github.com/%GIT_USER_NAME%/relax_trunk.git # Linux git remote add origin https://${GIT_USER_NAME}@github.com/nmr-relax/relax_trunk.git git remote add hub https://${GIT_USER_NAME}@github.com/${GIT_USER_NAME}/relax_trunk.git
git fetch origin git checkout --track origin/master git fetch hub
Now we add the user scripts repo
# Windows git clone https://%GIT_USER_NAME%@github.com/nmr-relax/relax_scripts.git # Linux git clone https://${GIT_USER_NAME}@github.com/nmr-relax/relax_scripts.git
Go to https://github.com/nmr-relax/relax_scripts
Click Fork.
cd relax_scripts # Windows git remote add hub https://%GIT_USER_NAME%@github.com/%GIT_USER_NAME%/relax_scripts.git # Linux git remote add hub https://${GIT_USER_NAME}@github.com/${GIT_USER_NAME}/relax_scripts.git
The relax_disp
Go to https://github.com/nmr-relax/relax_disp
Click Fork.
Now add this as a private remote, by setting the remote name hub.
# Windows set relax_disp="C:\WinPython27\relax\relax_disp" set GIT_USER_NAME="GIT_USER_NAME" md %relax_disp% cd %relax_disp% # Linux bash ; relax_disp=$HOME\relax\relax_disp GIT_USER_NAME="GIT_USER_NAME" mkdir -p ${relax_disp} cd $relax_disp
git init # Windows git remote add origin https://%GIT_USER_NAME%@github.com/nmr-relax/relax_disp.git git remote add hub https://%GIT_USER_NAME%@github.com/%GIT_USER_NAME%/relax_disp.git # Linux git remote add origin https://${GIT_USER_NAME}@github.com/nmr-relax/relax_disp.git git remote add hub https://${GIT_USER_NAME}@github.com/${GIT_USER_NAME}/relax_disp.git
git fetch origin git checkout --track origin/master git fetch hub
Now we add the user scripts repo
# Windows git clone https://%GIT_USER_NAME%@github.com/nmr-relax/relax_scripts.git # Linux git clone https://${GIT_USER_NAME}@github.com/nmr-relax/relax_scripts.git
Go to https://github.com/nmr-relax/relax_scripts
Click Fork.
cd relax_scripts # Windows git remote add hub https://%GIT_USER_NAME%@github.com/%GIT_USER_NAME%/relax_scripts.git # Linux git remote add hub https://${GIT_USER_NAME}@github.com/${GIT_USER_NAME}/relax_scripts.git
Get future updates
For future updates to the SVN revision HEAD, you now need to do a git svn rebase, which is very similar to: svn up
git svn rebase
Check branch information
git branch -a
How the import to github was done
Based on these posts and on this recommended post, and also this post.
You should install msysgit on windows, to do the commands.
md C:\WinPython27\relax cd C:\WinPython27\relax
You need an authors.txt file, to correctly convert the metadata.
git svn clone http://svn.gna.org/svn/relax/trunk --no-metadata -A authors.txt copy authors.txt trunk
git svn clone http://svn.gna.org/svn/relax/branches/relax_disp --no-metadata -A authors.txt copy authors.txt relax_disp
#Build cd trunk scons cd .. cd relax_disp scons
Setup remotes to github
For branch trunk
cd C:\WinPython27\relax\trunk # If you are a member of the organization, with writing permissions, then do: git remote add origin https://GIT_USER_NAME@github.com/nmr-relax/relax_trunk.git # See the info git remote -v git remote show origin
Now go to github.com at https://github.com/organizations/nmr-relax click Repositories -> New.
Call it relax_trunk. We want to preserve history , so do not Initialize this repository with a README or anything like, README or .gitignore.
Then send svn branch master of to github
git push -u origin master
For branch relax_disp
cd C:\WinPython27\relax\relax_disp # If you are a member of the organization, with writing permissions, then do: git remote add origin https://GIT_USER_NAME@github.com/nmr-relax/relax_disp.git # See the info git remote -v git remote show origin
Now go to github.com at https://github.com/organizations/nmr-relax click Repositories -> New.
Call it relax_disp. We want to preserve history , so do not Initialize this repository with a README or anything like, README or .gitignore.
Then send svn branch master of to github
git push -u origin master
git operations
Get new changes from svn repository and push to github
git co master git svn fetch git rebase --onto remotes/git-svn git push origin master