5

職場では TFS を使用しており、TFS リポジトリにプッシュする前にローカル コミットを操作する際の柔軟性を高めるために、Git-TFS ツールを機能させようとしています。

これは機能していますが、 を実行するgit tfs ctと、すべてのコミットが 1 つの TFS 変更セットにチェックされます。私は何かが欠けていますか、それともこれがどのように機能するはずですか? 私の各コミットを個別の変更セットとして個別に TFS にプッシュしない場合、そもそも git-tfs を使用する目的が無効になるようです。

4

1 に答える 1

9

新しい git 変更セットを一度に 1 つずつ tfs にコミットする rcheckin コマンドを使用し、各 tfs コミット後に残りのコミットをリベースして、通常の外観のツリーを生成します。checkintool サブコマンドを使用すると、mergecommit が生成されます。ただし、git コミットを押しつぶしたことは覚えていません。

したがって、通常の git ワークフローを使用します。フィーチャー ブランチをチェックアウトして作業し、master と 'git tfs pull' をチェックアウトし、必要に応じてフィーチャー ブランチを master に対してリベースし、feature を master にマージして実行しますgit tfs rcheckin。最後に、フィーチャー ブランチを削除します。まれに、(ロックされた tfs ファイルが原因で) これが失敗することがありましたが、rcheckin はすべてを適切な状態のままにして停止し、障害物が取り除かれたら続行しても問題ありませんでした。

全体として、git-tfs は TFS の使用を耐えられるものにします。

于 2012-07-04T21:19:17.910 に答える