Ответ 1
Переменные
- $project - название вашего проекта
- $username - ваше имя пользователя в github
Предполагается, что ваше имя $project совпадает с именем github, как на code.google, и вы уже инициализировали свой репозиторий github.
Кроме того, если ваш репозиторий code.google уже GIT, вы можете перейти к шагу 4.
-
Преобразование проекта из SVN в GIT. Это так же просто, как войти на вкладку "Администрирование- > Источник" и изменить ее с SVN на GIT. Кстати, svn по-прежнему доступен после того, как вы это сделаете; поэтому не беспокойтесь о полной потере кода.
-
Преобразовать исходный код из code.google SVN в code.google GIT (сохранение истории)
git svn clone --stdlayout https://$project.googlecode.com/svn $project cd $project git remote add googlecode https://code.google.com/p/$project git push --all googlecode cd ..
-
Преобразование wiki из Google SVN в google GIT (сохранение истории)
git svn clone https://$project.googlecode.com/svn/wiki $project.wiki cd $project.wiki/ git remote add googlecode https://code.google.com/p/$project.wiki git push --all googlecode cd ..
-
Получить новый репозиторий GIT из github
mkdir github cd github/ git clone https://code.google.com/p/$project.git cd $project/
-
Получить исходный код из code.google GIT в локальный клон github
git remote set-url origin https://github.com/$username/$project.git git pull
-
Нажмите источник из локального клона в github
git push origin master
-
Сообщите местному клону, чтобы он нажимал на github AND code.google
git remote set-url --add origin https://$project.googlecode.com/git
-
Тестирование нажатием фиксирует как github, так и code.google
touch test.txt git add test.txt git commit -m "Testing repo replication" test.txt git push
Теперь, всякий раз, когда вы вносите изменения в свой локальный клон, он будет вытеснять эти изменения в оба репозитория.
Примечание. Если вы снова клонируете в другом месте (например, на другом компьютере), вам придется снова повторить шаг 6.