を使用して特定のブランチをフェッチします。 a> ザイリンクスwiki の説明に従ってgitを使用します。

これを試しました:

#git clone git://github.com/Xilinx/u-boot-xlnx/tree/master-next.git Initialized empty Git repository in /home/Hannan/master-next/.git/ fatal: remote error: Xilinx/u-boot-xlnx/tree/master-next is not a valid repository name Email [email protected] for help 

これでも失敗しました:

# git clone git://github.com/Xilinx/tree/master-next/u-boot-xlnx.git Initialized empty Git repository in /home/Hannan/u-boot-xlnx/.git/ fatal: remote error: Xilinx/tree/master-next/u-boot-xlnx is not a valid repository name Email [email protected] for help 

機能するコマンドは次のとおりです。

 git clone git://github.com/Xilinx/u-boot-xlnx.git 

しかし、これが実際にマスター-次のブランチをフェッチすることをどうやって知ることができますか>マスターブランチ? gitを使用して特定のブランチを正しくフェッチするにはどうすればよいですか?

PuTTY経由でアクセスするRHEL6を使用しています。

回答

エラーメッセージが示すように、git cloneはgitリポジトリを想定しています。そのようなパスにブランチの名前を「追加」することはできません。 gitのブランチを参照してください。

クローンを作成できます。単一のブランチ(およびその履歴):git clone <url> --branch <branch> --single-branch

git help cloneを参照してください。

ただし、実行したcloneコマンドにより、リポジトリ全体のコピーが提供されました。既存のブランチはgit branchで確認でき、詳細はgit show-branch

git checkout branch-nameを使用して目的のブランチに切り替えます。

Pro Git ブック(オンラインで入手可能)には、基本的なコマンドの詳細が記載されています。

コメント

  • "実行したcloneコマンドにより、リポジトリ全体のコピーが提供されました"。リポジトリ全体は、両方のブランチがマージされたことを意味しますか?
  • いいえ。マージされません。 ここで説明されているように、gitのブランチはディレクトリ全体のコピーではありません。
  • これは次のとおりです:" git clone -b master-next github.com/葉数型/u-boot-xlnx.git "これは正しくありませんか?
  • 'もうクローンは必要ありません。質問で示したコマンドは、すべてのブランチを含むリポジトリを提供しました。しかし、これも正しいです。 'は、クローン作成後にgit checkout master-nextを実行するのと同じです。

回答

このコマンドは機能するはずです:

$ git fetch origin [branch] 

上記のコマンドは、リモートリポジトリからメタデータをフェッチするだけで、フェッチしません。ソースをマージします。

ソースをフェッチしてマージする場合、コマンドは次のようになります。

$ git pull origin [branch] 

ブランチに注意してください。マージコマンドを実行しています。ソースがマージされる場所になります。

コメント

  • あなたの答えは技術的には正しいですが、文法的なチェック/再-の恩恵を受けるかもしれないと思います。書き込み。
  • これはうまく機能します。

回答

gitリポジトリにはすべてのブランチが含まれます(ただし、圧縮されているため、サイズの問題はめったにありません。

したがって、プロジェクト全体を正常に実行したとおりに複製できます。これは、1つのブランチのみに関心がある場合でも、リポジトリを取得するための標準的な方法です。

.git構造には、そのリポジトリで実行されたすべてのブランチが含まれます。

特定のブランチを使用するには、git checkout [branch_name]を実行します。ブランチが存在する場合、ファイルはローカルで使用可能になります(それと同様に、プロジェクトディレクトリ内の現在のファイル)。

git statusは、現在のブランチがどのブランチであるかを示します。例:

Leiazによると、特定のブランチのクローンを作成できます。実際には、これを行ったことがないか、他の人が使用しているのを見たことがありません。さらに調査すると、比較的新しく、git 1.7.10(2012年4月)に追加されました。クローンを制限する「gitclonelearned–single-branch」オプション単一のブランチに(サプライズ!);ブランチの履歴を指していないタグはフェッチされません。例:

git clone -b master-next --single-branch git://github.com/Xilinx/ 

ここに画像の説明を入力ここで、「リンカー」アプリケーションについて、ブランチv3.0.10

コメント

<をチェックアウトしています。 ul class = "comments">

  • I 'どちらも行ったことがないので、オプションを見たことを思い出しました。'余分なブランチとして使用されることはめったにありませんが、サイズが"安価"です。
  • コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です