web-dev-qa-db-ja.com

Subversionで現在チェックアウトされているブランチとは異なるブランチに変更をコミットします

私は開発ラインからチェックアウトされたコードに取り組んでおり、行われた変更は破壊的な変更であり、メインの開発ツリーにコミットする前に実験的なブランチに移動する必要があることを発見しました。ただし、実験的なブランチをチェックアウトしておらず、すでに行われた変更を失いたくありません。

作業フォルダの変更を、最初にチェックアウトしたブランチとは異なるブランチにコミットする方法はありますか?

111
Paul Alexander

最初に、既知のsourceURL(質問で言及した「開発ライン」)からブランチを作成する必要があります。

svn copy sourceURL branchURL

次に、そのブランチに切り替えます。

svn switch branchURL

そして、変更をコミットします。

svn commit
124
ryanprayogo

TortoiseSVNで次のようにできます。

  • 分岐したい変更があるディレクトリを右クリックします。リポジトリのルートであってはならず、その方法で複製することはできません。
  • TortoiseSVN-> "Branch/tag ...";を選択します。
  • Set To URL: "svn:// Host/repository/FooBar/branches/FooBarBranchName";
  • [*] 作業コピーが選択されているを確認してください。これにより、変更が確実にコミットされます。
  • ログメッセージ: "ハエの実験:)";
  • オプション:[*]にチェックマークを付けます作業ブランチを新しいブランチ/タグに切り替えます。これは、新しいブランチで作業を続ける予定がある場合に便利です。後で切り替えることもできますが。
  • [〜#〜] ok [〜#〜]ボタンを見つけてください。ヒント:ウィンドウの中央下部にあります。

楽しい!

53
J Pollack

作業ディレクトリから直接新しいブランチを作成し、作業ディレクトリをそのブランチに切り替えることができます。

コマンドはsvn copyおよびsvn switch

8
Dima