通常は注意することで問題を回避できますが、作業中のブランチを再確認する必要がある場合もあります(eg "hmm ...私はdev
ブランチにいます、右?))ランダムファイルのソース管理パスをチェックします。
より簡単な方法を探すために、それに応じてソリューションファイルに名前を付けることを考えました(e.g。MySolution_Dev.sln
)ですが、ブランチごとに異なるファイル名を使用しているため、ソリューションファイルをマージできません。
それほど大したことではありませんが、正しいブランチにいることをすばやく確認するために使用するメソッドや「小さなトリック」はありますか? Visual Studio 2010とTFS 2008を使用しています。
私はこれを使用しています http://visualstudiogallery.msdn.Microsoft.com/f3f23845-5b1e-4811-882f-60b7181fa6d6
タイトルを次のように更新します。
開発\ myproject
または
Main\ myproject
または
リリース\ myproject
それが役に立てば幸い
作業ディレクトリに別の名前を付けます。つまり、プロジェクトのタイトルが「MY_PROJECT」の場合、ブランチごとに異なる作業ディレクトリを作成します。 「dev」という名前のブランチが1つある場合は、次のように、trunk用のディレクトリとdev用のディレクトリが必要です。
~/henginy/projects/MY_PROJECT-trunk
~/henginy/projects/MY_PROJECT-dev
私は一般的なdevやトランクブランチでは働いていません。
私は常に機能ブランチで動作します。機能が完成したら、次の手順に従います。
一度に数分だけdevブランチを開いて、すぐに閉じます。
各ブランチに空のファイルを作成できます。たとえば、トランクにTHIS_IS_TRUNK.txt、DEVにTHIS_IS_DEV.txtを作成します。
(D)VCSの作業の多くをコマンドラインから実行します。あなたがいる場所にプロンプトを表示することを強くお勧めします。たとえば、Gitリポジトリでのプロンプトは次のようになります(SVNでもこれを行います)。
[BranchName]RepoTop/path/to/current/wd >>
そして、リポジトリが現在ダーティな場合(コミットされていない変更):
[BranchName!!]RepoTop/path/to/current/wd >>
また、prodにログインすると、背景が赤に設定されます。簡単な視覚的通知が非常に効果的だと思います。
あなたはあなたのコンピュータに戻った後、これが最もよく見られると述べました。私が去ったときに現在のフォーカス(ブランチ、バグ番号、機能)がキーボードにくっついて、それが最後に行ったものを再作成するのではなく、すばやく作業に戻ることができるという非常に効果的な投稿を見つけました。
これに役立つ TFS Solution Info と呼ばれる無料のVisual Studio拡張機能があります。現在のブランチとワークスペースを小さなウィンドウに表示し、どこにでもドッキング/ピン留めできます。
私は VSCommands 拡張機能(Visual Studio 2012では2010バージョンがあります)を使用していて、画面の左上隅とソリューションエクスプローラーにブランチ名を簡単に配置できます。
製品とは関係なく、ただの幸せなユーザーです。
oneブランチでほぼすべてを行うことで、間違ったブランチでの作業を回避します(トランク内-いわゆる「不安定なトランク」ごとに ブランチ戦略 )。
ブランチの更新を余儀なくされるケースは非常にまれです-これらはプロダクション前およびポストプロダクションのバグ修正です(製品候補コードはブランチで分離されています)。これらの修正もトランクにあるはずなので、私は通常、ドラフトを作成し、テストし、トランクで確認してから、prodブランチに移植します。原則として移植には、分岐してビルドチェックする1〜5個のファイルの単純なコピーが含まれます。
ここにはすでにたくさんの答えがありますが、私が作業している単純なソリューションには触れていません。ブランチごとに、新しいVM dev環境を含み、適切なブランチからチェックアウトします。あなたはそれを行うだけで、それを一度正しく行うだけで済み、その後、VMを切り替えてブランチを切り替えるだけです。
具体的な答えは、使用しているバージョン管理ソフトウェアによって異なりますが、通常、作業中のブランチを簡単に確認できるコマンドがあります。たとえば、Subversionではsvn info
コマンドをディレクトリに入力して、そのブランチのURLを確認します。特定のファイルにもっと興味がある場合は、それも指定できます。
caleb-dev$ svn info foo.c
Path: foo.c
Name: foo.c
URL: https://svn.mycompany.com/repo/sample/branches/caleb-dev/foo.c
Repository Root: https://svn.mycompany.com/repo/sample
Repository UUID: d62f7aef-3ad2-6098-12a-c16647d854ab
Revision: 1042
Node Kind: file
Schedule: normal
Last Changed Author: caleb
Last Changed Rev: 1031
Last Changed Date: 2011-06-07 15:28:27 -0400 (Tue, 07 Jun 2011)
Text Last Updated: 2011-06-08 03:08:12 -0400 (Wed, 08 Jun 2011)
Checksum: 123456789098765432123456789098
URLから、foo.cのコピーがcaleb-devブランチにあることがわかります。
ローカルディレクトリの名前はブランチと同じであるため、頻繁に行う必要はありません。コマンドラインプロンプトをざっと見てみると、通常、自分が正しいディレクトリにいること、したがって正しいブランチで作業していることを確認するのに十分です。