0

トランクなしで既存のsvnリポジトリにトランクディレクトリを作成し、すべてを移動する方法を調べましたが、適用できる可能性がありますが、「トランク」はありますが、その上級開発者がプロ​​ジェクトをインポートした方法svn repos に追加すると、レビューに値する違いが得られる場合があります。

ログを見ると、開発者が svn ツリー、trunk/branches/tagsディレクトリをローカルに作成し、ディレクトリ内のすべてのファイルを作成してから、branchesへの最初のインポート時にsvn、ブランチ コミットの一部としてトランクとタグをコミットしたようです。

これは、ブランチへのコピーの履歴がないことを意味します。ほぼ忠実なログは次のとおりです。

% cd work
% mkdir -p project/trunk project/branches project/tags
% cd project/branches
... begin a bunch of work on a java service v1.0
... happy lets import to svn
% cd ..
% pwd project
% svn import -m"Initial import"
A branches
A branches/file-n
A branches/file-n ...
A tags
A trunk
Sending...
Committed rn
% svn mv $repos/project $repos/project_name
...
Committed rn

したがってsvn merge、ここでは実際には機能しません。trunkは最初のコミットの一部であり、履歴は実際にはクリーン マージを許可していません。

上記のコピーとコミットの提案を使用できますか? または、この場合に必要な別の方法はありますか?

4

1 に答える 1

0

ここSOでいくつかのことを組み合わせてこれを解決しました。

最終的に、移動は私たちの組織のビルド プロセスでは機能しませんでした。これにより、ブランチの履歴がトランクに保持されますが、ブランチは空のままになります。私たちのビルドはそれを好まなかったでしょう。

代わりに、ファイルをトランクディレクトリにコピーし、.svnもちろんディレクトリを経由svn exportしてコミットしました。

今、あなたは歴史を失っただけだと言う人もいるかもしれません。私はそれについてよくわかりません。ブランチの履歴はまだ残っており、trunk から新しいブランチが作成されました。以前のブランチはアクティブなままであり、プロセスが許可されたり、EOL のタグが付けられたりした場合などに廃止できます。

フィードバック歓迎。

于 2010-11-09T12:47:10.180 に答える