2016-12-15 10 views
1

私は同様の質問を見ましたが、いくつかは非常に古く、私が探しているものや答えがないものがあります。eclipseとgitのためのワークスペースとレポ・パスの配置

私は/workspace/project1/workspace/project2の下にEclipseのプロジェクトを持っています。彼らはGradleプロジェクトであり、お互いに依存しています。私は/workspace/project3もありますが、これはGradleプロジェクトですが、独立しています。

Bitbucketのgit repoに「アップロード」する必要があります。私はこれを手伝うためにEGitをインストールしました。それは私の地元のレポがどこにあるのか私に尋ね、私はそれに何を伝えるべきか分からない。私はワークスペースごと、または従属プロジェクトのグループごとにレポを作成する必要がありますか?

たとえば、プロジェクトを右クリックしてTeam > Share > Gitを押すと、このダイアログが表示され、そこで何を記入するべきか分かりません。

enter image description here

答えて

1

各(non-bare)のgitリポジトリには、現在チェックアウトされているコミットのファイル(HEADと呼ばれます)が格納されている作業ディレクトリがあります。

デフォルトでは、作業ディレクトリはgitメタデータディレクトリ(.git)の親ディレクトリですが、​​でデタッチできます。たとえば:git config core.worktree /path/to/workdir

EGitが、ここで答えとして切り離された作業ディレクトリを持っているリポジトリに対処することはできません。EGit working directory not under the local repository

しかし、関係なく、この制限の、あなたには、いくつかのワークスペースの中でgitリポジトリの作業ディレクトリを分割することはできません。

したがって、あなたは、この構造に似ているために、作業ディレクトリにプロジェクトを移動する必要があります。他の人とは無関係です

~/git/my-repo/.git 
~/git/my-repo/project1 
~/git/my-repo/project2 
~/git/my-repo/project3 

project3場合は、それがあるか、完全にどこか別の場所に配置する場所、それが残る場合があります。

複数のgitリポジトリにまたがって相互依存するプロジェクトを計画するときは注意が必要です。これにより、gitリポジトリが効果的に相互依存するようになりますが、gitでは依存関係管理ツールを使用しなくても可能です。

EGitにプロジェクトを移動させるには、パス内の入力フィールドにproject1と入力します。

マスターpom.xmlや対応するGradleファイルなどの一般的に使用されるビルドファイルは、作業ディレクトリのルートにあります。これにより、Travis、Codeship、お友達のような一般的なビルドサービスの設定も簡単になります。

+0

なぜ私のレポレベルが必要ですか? 'git'の内部と同じレベルに何かありますか? – Mark

+0

'my-repo'はリポジトリを保持するディレクトリであり、それに応じて名前を付ける必要があります。 'git'ディレクトリを省略することはできますが、通常は複数のリポジトリを持ち、ほとんどの人はすべてのリポジトリを共通の親ディレクトリにグループ化します。しかしそれは純粋に組織的な側面です。 –

+0

ここでは、3つのプロジェクトが独立していて1と2が依存していても、プロジェクト1から3がすべて同じリポジトリにあると仮定していますか? – Mark

1

心に留めておく/理解するためのいくつかのこと:

  • アンEclipseワークスペースは、プロジェクトの論理コンテナ、必ずしも物理的なコンテナです。ワークスペースがあるフォルダは、プロジェクトの物理的なコンテナでもあります。つまり、プロジェクトのファイルはワークスペースフォルダの下にあるフォルダに置くことができます(Eclipseで新しいプロジェクトを作成した場合のデフォルトの場所です)。しかしそれは要件ではありません。ワークスペース内に含まれるプロジェクトの内容(ファイル)は、ファイルシステム上の任意の場所に置くことができます。
  • ほとんどのdev設定では、ローカルのgit reposはユーザのホームディレクトリの "標準"の場所、すなわち%USER_HOME%/git/name-of-repoにあります。繰り返しますが、これは厳しい要件ではなく、ユーザーは選択した任意の場所にリポジトリを複製または作成することができます。

Eclipse eGitでは、柔軟性の2つの軸を示しています。それはあなたのローカルのgitリポジトリを作成する場所を尋ねています。通常、あなたのワークスペースフォルダとは異なります。作成...ボタンを使用して作成します。その時点で、リポジトリ内のパスが自動的に入力されると思いますフィールド。そうでない場合は、そのパスに任意の名前を付けることができます(通常はプロジェクト名と同じですが、必ずしもそうではありません)。

最後に、ワークスペースプロジェクトのコンテンツの物理的な場所になるローカルのgitリポジトリ。

+0

この操作の後、プロジェクトは作業領域のディレクトリからgitリポジトリディレクトリに*移動(コピーされません)されますか?ちょうど私が他の質問で見たように自分のコードを2つコピーしている状況を避けるようにしたいのです。 – Mark

+0

正直なところ、ファイルを移動するかどうかはわかりません。私はちょうど試してみて、両方の場所を調べて状況が何であるかを見てみましょう。 –

+0

興味があれば:私のワークスペースからgit repoにプロジェクトを移動しました。助けてくれてありがとう。 – Mark

関連する問題