gitで複数のリポジトリを結合した話。 svn で project1/trunk と project2/trunk の2つがあったとき、 repos/project1 と repos/proje...
gitで複数のリポジトリを結合した話。
svn で project1/trunk と project2/trunk の2つがあったとき、
repos/project1 と repos/project2 をもった repos を作ろうという手順です。
よく調べればもっといいやり方があるのかもしれないけど、よくわからなかった。
git init repos
cd ./repos
touch .gitignore
git add .gitignore
git commit
git fetch ../project1 refs/heads/master:refs/heads/project1
git checkout project1
mkdir project1
mv * project1 # 実際には * ではなくて project1 が入らないようにします
git commit
git fetch ../project2 refs/heads/master:refs/heads/project2
git checkout project2
mkdir project2
mv * project2 # 実際には * ではなくて project2 が入らないようにします
git commit
git checkout master
git merge project1
git merge project2
git branch -d project1
git branch -d project2
svn で project1/trunk と project2/trunk の2つがあったとき、
repos/project1 と repos/project2 をもった repos を作ろうという手順です。
よく調べればもっといいやり方があるのかもしれないけど、よくわからなかった。
git init repos
cd ./repos
touch .gitignore
git add .gitignore
git commit
git fetch ../project1 refs/heads/master:refs/heads/project1
git checkout project1
mkdir project1
mv * project1 # 実際には * ではなくて project1 が入らないようにします
git commit
git fetch ../project2 refs/heads/master:refs/heads/project2
git checkout project2
mkdir project2
mv * project2 # 実際には * ではなくて project2 が入らないようにします
git commit
git checkout master
git merge project1
git merge project2
git branch -d project1
git branch -d project2