2017-01-15 1 views
0

Visual Studio 2015でgit統合でコード化しています。しばしば、異なる地方のブランチからコードを見る必要があるので、同時に各ブランチのコードの一部を分析し、ブランチ間でコードを簡単にコピー&ペーストすることができます。これは、あるブランチから別のブランチへの既存の変更をマージすることとは異なります。私は、同時に2つの別個のブランチを画面上に開く能力が必要です。VS2015でブランチ間でコードに同時にアクセスする

Visual Studioではgitブランチを切り替えることができますが、これを行うと、そのgitフォルダにアクセスするすべての開いているVisual Studioも切り替わります。

解決策を検索して見つけましたが、最適ではありません。すべてをチェックインし、ソースツリーを.gitディレクトリの1レベル上に複製します。ソリューション上のVisual Studioを元のディレクトリから開き、コピーされたディレクトリのソリューション上で2番目のVisual Studioインスタンスを開きます。それぞれは互いに独立していて、1つのVisual Studioで別のブランチを開き、別のVisual Studioの動作に影響を与えることはできません。

ソースコードの2つのコピーが含まれていないこの問題に対する解決策はありますか?

答えて

0

誰でもソースコードの2 コピーを必要としないこの問題の解決策を持っていますか?

いいえ、しかしコードの2つのコピーを持つ実行可能な解決策(IMO)があります。

まず、ローカルに複製した集中リポジトリがあると仮定しています。ローカルクローンからは、2つの機能ブランチがあります(とFeatureBと呼ぶ)。あなたができるときは、ローカルリポジトリを別のフォルダにクローンしてください。その新しいクローンでは、チェックアウトブランチFeatureB。元のクローン(集中サーバーのクローン)で、チェックアウトブランチFeatureAをチェックアウトします。これで2つのコードをコピーしても、何でも比較ができます。

これは、コードのコピーで現在行っている作業をチェックインする必要はありません。

1

最後にGit 2.5がこれに対応しています.Git WorkTreeという機能です。

https://git-scm.com/docs/git-worktree

gitリポジトリは に一度に複数のブランチをチェックアウトすることができ、複数の作業ツリーをサポートすることができます。 git worktreeでは、新しい ワーキングツリーがリポジトリに関連付けられます。この新しい作業ツリー は、 "git init"または "git clone"によって準備された "main working ツリー"とは対照的に、 "リンクされた作業ツリー"と呼ばれます。リポジトリには作業用ツリー(裸のリポジトリでない場合)と0以上のリンクされた 作業ツリーがあります。

add path [ブランチ]パスを作成し、ブランチにチェックアウトします。 新しい作業ディレクトリは現在のリポジトリにリンクされており、HEAD、 インデックスなどの作業ディレクトリ固有のファイルを除き、すべて を共有します。それは @ { - 1}と同義です。

+0

VSに統合されるかどうかわかりません。私はそれが必要なときにその機能の提案のリンクはどこですか.... – Taterhead

関連する問題