関連する質問を検索しましたが、私の特定の状況に合ったものは見つかりませんでした。私は、数年前に取り下げられたSVNサーバーの古いリポジトリアーカイブを持っています。それらはサーバー上の元のリポジトリ構造のタールボールです。私がしたいことは、gitリポジトリを将来の作業のための基礎として/プロジェクトを復活させることに変換することです。私はすでに変換プロセスに関するいくつかのチュートリアルを読んできました。私は変換、ブランチマッピングなどの著者を理解することができると思いますが、皆さんはSVNサーバーとリポジトリ用のURLを所有していることを前提としています。この変換を行うには、インストールとセットアップ、SVNサーバーが必要ですか?または、git clone
またはsvn2git
(または別のツール)のいずれかを私が持っているレポ・ダンプで指し示すことができますか?ローカルのsvn repoダンプをgitに変換する
答えて
p、そしてgit-svnパッケージを使用します。
あなたはgit svn clone file:///path/to/svn/repo /path/to/empty/dir
私はすでにこの実験的な昨夜を見つけて、それを動作させました。これは正解です。ありがとうございました+ 1 /受け入れました! SOにようこそ。 :-) –
ありがとう! – Asenar
- すべてのsvn(?) - > gitのコンバータは、ライブSubversionリポジトリを必要とし、リポジトリの
- ツリーのコピーがダンプではない、それは通常のファイルレベルのバックアップです。
あなたが持っている:
- をインストールし、コンバータはSVNのため
file:///
プロトコルを処理できない場合(任意のSubversionサーバを設定し、それ以外の場合は不要です - ただのtarball(Sを解凍)し、SVNでレポをチェッククライアント) - は、記事を読むのgit-svnの
- 使用のgit-svnのごDUMをインポートするために、ローカルのsubversionをインストール
は、すべてのSubversionのコミッタのリスト取得し使用することができます。
svn log -q | awk -F '|' '/^r/ {sub("^ ", "", $2); sub(" $", "", $2); print $2" = "$2" <"$2">"}' | sort -u > authors-transform.txt
クローンSubversionリポジトリ使用してのgit-svnの:
git svn clone [SVN repo URL] --no-metadata -A authors-transform.txt --stdlayout ~/temp
コンバートのsvn:を.gitignoreするプロパティを無視:
cd ~/temp
git svn show-ignore > .gitignore
git add .gitignore
git commit -m 'Convert svn:ignore properties to .gitignore.'
プッシュリポジトリ裸のgitリポジトリへ:
git init --bare ~/new-bare.git
cd ~/new-bare.git
git symbolic-ref HEAD refs/heads/trunk
次に、新しい裸のリポジトリに一時リポジトリを押してください。
cd ~/temp
git remote add bare ~/new-bare.git
git config remote.bare.push 'refs/remotes/*:refs/heads/*'
git push bare
名前の変更「トランク」ブランチ「マスター」へ:
cd ~/new-bare.git
git branch -m trunk master
クリーンアップブランチやタグ:
cd ~/new-bare.git
git for-each-ref --format='%(refname)' refs/heads/tags |
cut -d/-f 4 |
while read ref
do
git tag "$ref" "refs/heads/tags/$ref";
git branch -D "tags/$ref";
done
あなたの切断でダンプファイルください:クローン・パスして、オープンのgitのbashと に
svnadmin dump "repopath or url" > import.bkp git svn clone "back"
Go]をこれらのコマンドを実行します:VisualSVNサーバーの
git svn show-ignore > .gitignore git add .gitignore git commit -m "with message" git check in "git url"
- 1. git-svnでローカルの.gitignoreがsvn repoにプッシュされないようにする
- 2. Git RepoをTFSチームコレクションに変換する
- 3. ローカルGit Repo to TFS
- 4. git svnクローンを使ってsvnをgitに変換する
- 5. git repoをhg repoに変換する方法
- 6. git-svn:git repoとsvn repoを同期して維持する
- 7. svn repoの一部をgitに移動するには
- 8. git repoを裸のレポに変換する方法
- 9. GitリポジトリをSubGitでSVNに変換
- 10. ダウンロードしたレポをgit repoに変換するには?
- 11. svnブランチからtemp git repoを作成するには
- 12. git-svnをSVNリポジトリに変更する
- 13. git repoを水銀レポに変換する
- 14. ローカルのgit repoを別のオンラインgit reposにプッシュする(githubのような)
- 15. 最後のn個のコミットをsvnからgit repoに移動
- 16. git制御アプリケーションの1つのフォルダにsvn repoをプル
- 17. ローカルからgit repoにフォルダからファイルを移動する
- 18. SVNフォルダ構造を履歴とユーザのないGit Repoにインポート
- 19. Git Repoの変更をリッスンする
- 20. gitとsvnを同期させてgit repoを同時に変更する方法
- 21. SVN Backed Maven Repo
- 22. git-svnを使って、違法なブランチ名を持つsvn reposiroryをgitに変換するには?
- 23. ネットワーク共有からローカルGit repo PCを復元する
- 24. 'CVS時代'のレポをサブモジュール付きのgit repoに変換する
- 25. PostgreSQLのダンプをMySQLのダンプに変換する
- 26. Git Repoセットアップはブランチ上でローカルに動作します
- 27. ローカルのgit repoは45GBですが、bitbucketのリモートは380MBです
- 28. git-svnでインポートする際に冗長なrepoディレクトリを削除しますか?
- 29. git - ローカルのsvnリポジトリのサブフォルダをクローンする方法
- 30. gitに変換するときにsvnのコピー履歴を保持する
Standardエディションであります無料ですので、計画Bがあります。 – Dialecticus
オリジナルのSVNサーバーをインストールすると、それよりも簡単になるはずです。 –