2012-09-25 12 views
13

これは以前に尋ねられたことがわかりましたが、回答がなかったので、私は再度尋ねています。TFPT Unshelve移行が機能しない

シェルフセットをあるブランチから別のブランチに移行しようとしています。私は、ワークスペースDIRの中から、以下のコマンドを実行している:

tfpt unshelve changes;myusername /migrate /source:$/main /target:$/new-branch 

私はそのコマンドを実行したとき、私は「ブセット詳細」ウィンドウを立ち上げ、変更、およびフォルダ(/メイン$を指す)と

[unshelve]をクリックすると、$/mainを指すフォルダーを持つコンフリクトダイアログボックスが表示されます。私は決意をクリックすると、私は次のオプションを取得する:

  • は私の地元の変更は私の地元の変更を元に戻してください、と棚上げ
  • は私のローカルな変更を元に戻す取り、棚上げ変更を取ります。
  • は、私が「新しい枝」内のすべての保留中の変更を取得することはありません、私の地元の変更を維持し、マージローカルと内容私が選ぶ今までオプション

を棚上げ。私が保留している唯一の変更はメインブランチです。

答えて

9

ターゲットブランチ(ご使用の例では$/new-branch)にマップされているディレクトリからこのコマンドを実行する必要があります。

例えば

あなたの現在のブランチは=>C:\Workspace\TeamProject\Main\...

でワークスペースにマッピングされている主であり、あなたがD:\Workspace\TeamProject\Dev

にマッピングされているのDevへの変更を移動したい場合は、その後、あなたが実行する必要があります以下のディレクトリから、次のコマンドを実行します。詳細は

C:\Workspace\TeamProject\Main> tfpt unshelve "changes;muusername" /migrate /source:$/TeamProject/Main /target:$/TeamProject/Dev 

参照タルンのブログ記事:http://geekswithblogs.net/TarunArora/archive/2011/06/06/unshelve-shelveset-created-from-one-branch-to-another.aspx

+1

FWIW、これは私の制限ではありませんでした。私にとっては、両方のブランチの親ディレクトリから実行できました。したがって、上記の例では、 'C:\ Workspace \ TeamProject \'になっていました。私は、あなたがワークスペースw.r.tの一部としてマップされているディレクトリからそれを実行する必要があるのだろうかと思います。問題の支店。 – JoeBrockhaus

+12

@Grant Holliday:だからあなたは "target"にマップされたディレクトリから実行すると言っているが、実際には "C:\ Workspace \ TeamProject \ Main" "...非常に混乱する答え! – woohoo

+0

競合が見つかったときに実行するデフォルトのアクションを、競合ごとに手動で指定するのではなく、指定することはできますか。私は700以上のファイルを持っており、私の場合は手動で指定することは不可能です。 –

0

私はTFPT - Team Foundation Power Tools 2013を使用している質問者と同じ経験を持っていました。コマンドを実行し、 "自動マージが成功しました"というメッセージが表示され、動作していたと考えられますが、ブランチ。
私のコマンドでは、このようなものだった:

C:\ Users \ユーザーDEV \ TFS_TEST \ rel1.1> "C:\プログラムファイル(x86の)\マイクロソフトのTeam Foundation Serverの2013パワーツールはtfpt.exeを\" unshelve cbbss02を; [email protected]/migrate/source:$/E Pluribus Unum/SourceCode/rel1.2/target:$/E Pluribus Unum/SourceCode/rel1.1

他にも触れたように、ソースとターゲットパス:

"C:¥Program Files(x86)¥Microsoft Team Foundation Server 2013 Power Tools \ tfpt.exe" unshelve cbbss02; [email protected]/migrate/source: "$/E Pluribus Unum /SourceCode/rel1.2 "/ target:" $/E Pluribus Unum/SourceCode/rel1.1 "

実際にターゲットブランチへの変更を伝えるようにしました。

2

また、私はこの問題を抱えていたと掲載ソリューションのどれも働いていないように見えた(私は、Visual Stuidoが閉じられたことを確認しました)。

は、それがユーザー・エラーであったが、私は前方のが私の /targetパラメータにスラッシュではなくバックスラッシュを使用していました。

これは、もともとTFSパスではなくプロジェクトのローカルパスをコピーしてから、私のミスに気づいたときにルートパスを$に置き換えたためでしたが、スラッシュ方向の変更は忘れてしまいました。あなたのシェルフセットは元の支店で引き分けにならないだろう。

+0

私は誤ったパス(タイプミス)を抱えていました。 – lko

関連する問題