QA@IT

Eclipse 4.2で、GoogleCodeのプロジェクトをGitでcloneするには

3286 PV

Google Codeで、google-api-java-clientをcloneしてみました。

その後、Eclipseでこのソースを修正してみたいのですが、やり方が解らないのです。
ブラウザでは、cloneした後のプロジェクト名が出ています。私が自分でつけたプロジェクト名です。
タブがいくつかあります。今はsourceタブのcheckoutが選択されています。

ここにはURLがあります。(近くに「Get a local copy of the currysita-abc repository with this command:」と書かれています)
https://私のアカウント名@code.google.com/r/私が自分でつけたプロジェクト名/

これを使って、Eclipseにソースを持ってこれる(他の言い方が解らないのです)と思ったのですが、できません。

EclipseのGitリポジトリビューで、「Clone Git Repository」を選び、「URI」を選択しました。

ロケーションのURIに、↑のURLっぽい何かを入れました。
ホスト、リポジトリパスの項目は自動で入力されました。
プロトコルはデフォルトでhttpsを選択しました。

ユーザ名にはGoogleのアカウント、パスワードにはブラウザでcloneした際に作ったパスワードを入れました。
でもリポジトリが見つからないというエラーが出ます。

googlecodeでプロジェクトを作る、という所まではうまくいっていると思うのですが、ここからgitを使う方法が解りません。
Eclipseの画面に出てくる「URI」「ホスト」「リポジトリパス」の項目に何を入れればいいのかが解りません。↑のURLっぽい何かであってるんでしょうか?プロトコルはHTTPSでいいんでしょうか?
というか、そもそも使えるんでしょうか?

回答

私はMercurial使いなのでgitじゃないですが大体は同じなので。

とりあえず疑問の解消から。

AdministerタブのSouceを開きます。
RepositoriesにあるdefalutのURLを使います(たぶんあってます)。

httpsでいいです。
ユーザー名はメールアドレスですね。

パスワードはProject HomeのMembersで自分を選びSettingsを開いたらGoogleCode.com Passwordというのが出てたのでそれで試してます。

まず、google-api-java-client はhg cloneとあるのでMercurialリポジトリですかね。

と、ここで気づきましたがgoogle-api-java-clientのSourceのClonesでクローンしませんでした?
その場合は gitじゃないですよ。
Mercurialという分散バージョン管理システムです。
いっそMercurialにしてしまいましょう(啓蒙)-> ホントは好みで良いです。

ちょっとここだけ回答ください(SouceのClonesでクローンしたかどうか)


googleコードのクローンでリポジトリを自分のプロジェクトとしてコピーした場合、リポジトリの変更はできないみたいです。
(これ私の感覚だとフォークなのでちょっと読み違えしてました)
というわけでMercurialでいきましょう。
eclipseのプラグインを利用するか、TortoiseHgなどのMercurialクライアントを使用するかになります。

eclipseとMercurialの連携はMercurialEclipseがあるようです。
http://javaforge.com/project/HGE

インストールはこちらが参考になりそうです(インストールのところ。 bitbucketは興味があればどうぞ、google codeのようなものです。)
下記サイトではUbuntuですが、Windowsでも同じです。
http://symfoware.blog68.fc2.com/blog-entry-837.html


リポジトリからのCloneはFile>Import>Mercurial>Clone Existing Mercurial Repository から。
MercurialEclipseのサイトにあった、GoogleCodeからのクローンについての動画が参考になりそうです。
(すいません、よく見てませんが画面があるので参考になるだろうと思います)
http://www.youtube.com/watch?feature=player_embedded&v=9OBg6Zv0Tns

Select WorkingDirectory Revisionはそのまま(defaultブランチ)で良いでしょう。

すごくザックリ言うと
Commitでローカルで確定し、
Pushでリポジトリに送信する、
Pullでリポジトリから受信する。
です。
Commitだけではサーバーには送信されません。ローカルにあるリポジトリのコピーとだけやりとりしています。
(2か所以上からリポジトリを扱う場合はpushし忘れに注意ですね)

編集 履歴 (3)
ウォッチ

この質問への回答やコメントをメールでお知らせします。