web-dev-qa-db-ja.com

TortoiseGitクローンリモートブランチ

最近Gitを使い始めたので(長年のSubversionユーザー)、Gitに同意しようとしていますが、TortoiseGitでリモートブランチのクローンを作成する方法が見つかりません。

GitHubにプッシュしたローカルブランチを作成しましたが、このリモートブランチのクローンを作成(チェックアウト)しようとすると、それを行う方法が見つかりません。

どうすればいいですか?

6
Thomas

Linquizeが述べているように、この機能はTortoiseGitによって直接提供されるものではありません。ただし、本当に使用したい場合は、次のことができます。

  • ブランチが属するリポジトリのクローンを作成します(右クリックメニュー-> Gitクローン...)。これにより、クローンによって作成された作業コピーがHEADにチェックアウトされます。

TortoiseGit clone window

  • 作業コピーをHEADから目的のブランチ/タグに切り替えます(右クリックメニュー-> TortoiseGit->切り替え/チェックアウト)

TortoiseGit switch window

最初のcloneコマンドはheadへのチェックアウトを意味するため、これはコマンドラインから少し時間がかかります。その後、必要なブランチ/タグに切り替える必要があります。

17
sbell

(これはTortoiseGit v1.8.3.0以降です。)

TortoiseGitコンテキストメニューで最初に「Git-> GitSync」を実行します。 (注:保持する必要がある場合があります Shift コンテキストメニューに表示するようにGitSyncを設定した方法に応じて、右クリックして下に移動します。)

左下に「リモートアップデート」というボタンがあります。そうすれば、ローカルリポジトリに存在しない新しいリモートブランチがすべてプルダウンされます。

Remote Update

その後、通常どおり「Git-> Git Checkout」を実行できるようになり、必要なブランチがリストに表示されます。

これと同じ手順を使用して、最初に作成したかどうかに関係なく、リモートリポジトリに作成された新しいブランチについてTortoiseGitに通知できることに注意してください。

9
metaforge

Gitクローンウィンドウで利用できます: enter image description here

7
Vishwajeet

残念ながら、現在のTortoiseGit(TortoiseGit 1.7.13.0)は特定のブランチのクローンを作成できません。機能のリクエストをすることができます。

回避策:

  1. 手動のGitコマンドを使用します(例:git clone --recursive --branch 2.x-1.0
  2. 別のGitGUIを使用します。 SmartGit

別の方法は、すべてのブランチを複製してから不要なブランチを削除することですが、これでも、多くのタグ(および異なるファイル名)を持つブランチが多数ある場合は特に良い解決策ではありませんが、TortoiseGitが提供するまではこれが回避策です。コマンドラインを使用して手動でブランチのクローンを作成することを選択しました。 LinuxのGitバージョンはすでに--branchオプションを提供しているため、この質問はWindowsユーザーに対してのみ発生しました。

1
Wendy William

これに関する更新:

特定のブランチのみが必要な場合は、現在、SVNで直接チェックアウトできます。ブランチのツリーURLをコピーします。つまり、https://github.com/USERNAME/REPONAME/tree/BRANCHNAMEそしてtreebranchesに置き換えると、https://github.com/USERNAME/REPONAME/branches/BRANCHNAME

このURLは、特定のブランチをチェックアウトするために使用できます。

0
Martin Braun