ホームページ >開発ツール >Git >Git チュートリアル: git pull と git clone の違い (概要の共有)

Git チュートリアル: git pull と git clone の違い (概要の共有)

WBOY
WBOY転載
2022-01-10 19:28:508039ブラウズ

この記事では、Git チュートリアルの git pull と git clone の違いについての知識を提供します。お役に立てば幸いです。

Git チュートリアル: git pull と git clone の違い (概要の共有)

インターネット上では、プルとクローンの違いについて説明する人が多く、プルはローカル コードを更新すること、クローンはローカル コードを最初から作成するプロセスであると言っていますが、彼らが言及していないことが 1 つあります。以前はリモートの倉庫から直接プルしていたため、たまたま今日もこの問題が発生しました。しかし、今日突然、プルが使用できず、クローンのみが有効であることに気付きました。この問題。録画することにしました。

1 git pull

git pull は、ユーザーがアクセス許可を持っているリポジトリからコードをプルダウンするのに適しています。ローカルコード。

私は通常 git pull 経由でコードを直接プルダウンするためです。

1.1 権限のあるウェアハウス

権限のあるウェアハウスとは、私が使用できる自分のウェアハウス、またはチーム内のウェアハウスを指します。

git pull を使用するには、まずリモート リポジトリに接続していることを確認する必要があります。それ以外の場合、直接 git pull オリジン マスターを実行すると、Github は「どのマスターですか? どのマスターですか? あなたは私のマスターですか?」と尋ねます。

したがって、最初にリモート ウェアハウスに接続する必要があります。

Git チュートリアル: git pull と git clone の違い (概要の共有)

init は、.git 以外には何も入っていない空のローカル ウェアハウスを初期化します。

リモート ウェアハウスに接続します

1.1 .1 ローカル コードがありません

Git チュートリアル: git pull と git clone の違い (概要の共有)

git remote -v は、現在のローカル リポジトリに接続されているリモート リポジトリを表示するために使用されます。複数に接続できます。この場合、ウェアハウスはアップロード用とプルダウン用のペアで存在します。私は通常、手前の起点をリモート ウェアハウスの名前と呼び、奥にあるものを接続方法と呼びます。

これで、origin という名前の github リモート ウェアハウスに接続していることがわかります。

Git チュートリアル: git pull と git clone の違い (概要の共有)

#空のウェアハウスでは、git pull を直接使用してコードをプルダウンできます。

1.1.2 ローカル コード

ローカル コードがある場合はどうなりますか?

  • チーム作業、1 つの倉庫を複数の人が使用

  • 自分の倉庫を複数のコンピューター (たとえば、寮、実験室 1 に 1 人)

なぜ git pull が必要なのですか?コードのバージョンはコンピュータによって異なります。したがって、作業を軽減し、コードのバージョンの一貫性を確保するには、コードを作成するたびにコードをプルダウンします。書き込み後はリモートリポジトリにプッシュします。絵を描いて説明します。

Git チュートリアル: git pull と git clone の違い (概要の共有)

Git チュートリアル: git pull と git clone の違い (概要の共有)

1.2 権限を持たない倉庫

権限を持たない倉庫権限を持っていない場合は、他の人のウェアハウスを参照します。他の人が許可を与えていない場合、もちろん、その人のコードを自由に変更することはできません。

Git pull を許可なくウェアハウスに使用することはできません。例:

今日、いつものようにコードをダウンロードしました。しかし、他人のコードをダウンロードするのはこれが初めてです。

Git チュートリアル: git pull と git clone の違い (概要の共有)

いつものようにリポジトリ リンクを追加し、ドロップダウンを git プルダウンします。しかし、彼は私に次のようなプロンプトを出しました:

権限が拒否されました (公開鍵)。

致命的: リモート リポジトリから読み取れませんでした。

正しいアクセス権があることを確認してください。リポジトリが存在します。

権限が拒否されたということは、SSH キーが使用できないことを意味します。アクセス権限があるか、リポジトリが存在するかを確認させてください。

倉庫は存在します。だから許可がないといけないんです。

Git チュートリアル: git pull と git clone の違い (概要の共有)

#3 ステップの操作を説明します:

    #リモート ウェアハウスを追加し、SSH で接続します
  • ウェアハウスのマスターブランチからコードをプルダウンします
  • ##追加したリモートウェアハウスを削除します(使えないので当然削除しました)
  • このとき、SSH はリポジトリ所有者のみが利用できることを思い出しました。コンピューター上で構成された SSH は github 上の SSH とペアになっているため、コンピューター上で github リポジトリを使用する場合にのみ SSH を使用できます。
SSH を使用できるのは倉庫所有者だけであるため、HTTP に切り替えるだけで済みます。 (現時点では問題の深刻さに気づいていません)

https 接続を追加しましたGit チュートリアル: git pull と git clone の違い (概要の共有)

2 番目のステップで、倉庫

それから彼は私にプロンプ​​トを出しました:

致命的: 'github.com/hitvoice/Dr…' にアクセスできません: OpenSSL SSL_read: 接続がリセットされました、エラー番号 10054

これはまだ接続できないことを意味します。

この時、私は突然問題に気づきました:neutral_face:。これは他の人の倉庫のようです。リモートを使用してリモート倉庫に接続し、プルダウンすることはできません。接続できれば、他の人のコードを自由に変更できることになるからです。したがって、この方法では絶対にコードを引き出すことはできません。 ! !

したがって、git clone を使用する必要があります

2 git clone

git clone はコードのないローカル コードに適しています。それをダウンロードする必要があります。リモートリポジトリに接続できません。ウェアハウスの許可の有無にかかわらず使用できます。

上記の続きで、git cloneの使い方に気づき、先ほどリモートウェアハウスへのHTTPS接続を削除し、直接git cloneを実行したところ、コードが正常にダウンロードされました。

Git チュートリアル: git pull と git clone の違い (概要の共有)

リモート ウェアハウスに接続するための上記の https メソッドを削除しました。

git Remote -v は、ローカル ウェアハウスがどのリモート ウェアハウスに接続されているかを確認するために使用されます。接続すると、ウェアハウス コードと接続方法が表示されます。ここでの出力は空白です。これは、リモート ウェアハウスが接続されていないことを意味します。

git clone はコードを正常にダウンロードしました。

上記は他人の倉庫ですが、私が使用許可を得ている倉庫の場合はどうなりますか?

新しいローカル倉庫を作成します。それは明らかに成功です。 SSH が成功できる場合は、HTTPS も成功する必要があります。リモートなしで成功できるなら、リモートを使用すれば必ず成功します。

Git チュートリアル: git pull と git clone の違い (概要の共有)

推奨学習: 「Git チュートリアル

以上がGit チュートリアル: git pull と git clone の違い (概要の共有)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjuejin.imで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。