私は現在、sourceforge のFreeGLUTプロジェクトのメンテナーの 1 人です。このコードは SVN リポジトリに保存されていますが、他のユーザーの貢献を刺激するために、git リポジトリを利用できるようにしたいと考えています。現在githubにあるsvnトランクのgit-svnクローンをすでに持っています(実際にはgit-svnと互換性がないSmartGitで作成されています)。
これはクローンで作りましたhttps://svn.code.sf.net/p/freeglut/code/trunk/freeglut
。ただし、クローンhttps://svn.code.sf.net/p/freeglut/code
を作成して、SmartGit の svn ブリッジにブランチとトランクを認識させる必要があることがわかりました。
この新しい正しいクローンをローカルに作成しました。ここでの問題: 古い/間違ったクローンのローカル git リポジトリに既にいくつかのコミットがあります。これらを新しいレポに転送したいのですが、ディスク上のルートディレクトリが同じではないため、ここで概説した単純なリベース戦略は機能しません (私は思います)。
パッチでそれを行うこともできます.パッチファイルのパスにプレフィックスを付けgit apply
て動作させる--directory
引数もありますが、コミットごとにコミットする必要があります. 少なくとも、複数のコミットを 1 つのパッチ ファイルに入れ (スカッシュせずに) HEAD
、.
問題を解決するにはどうすればよいですか?