ホームページ > テクノロジー周辺機器 > IT業界 > クイックヒント:コマンドラインを介してgithubフォークを同期します

クイックヒント:コマンドラインを介してgithubフォークを同期します

Christopher Nolan
リリース: 2025-02-19 09:41:12
オリジナル
524 人が閲覧しました

GitHub Froked Repositoryを同期させ、Forked Repositoryが元のリポジトリからの最新の変更と一致していることを確認することが重要です。これは、元のリポジトリからローカルリポジトリへの変更を引き出し、フォークリポジトリにプッシュすることで実行できます。

フォークリポジトリの更新プロセスには、リポジトリのフォーク、フォークリポジトリのクローニング、元のリポジトリへのリンク、元のリポジトリからの変更の引き出し、フォークリポジトリへの変更のプッシュ

に含まれます。このプロセスでは、リポジトリを分岐し、ローカルマシンのフォークリポジトリをクローン化したことを想定しています。

フォークリポジトリを扱う場合、フォークリポジトリまたはローカルリポジトリのメインブランチに直接変更を犯すことを避けることをお勧めします。このブランチは、元のリポジトリからのみ更新コードを保存するために使用する必要があります。すべての変更は、新機能またはエラーブランチで行い、フォークリポジトリに同じ名前のブランチにプッシュする必要があります。

Quick Tip: Sync a GitHub Fork via the Command Line

フォークリポジトリを更新するという概念を理解するには、まずこれが必要な理由を理解する必要があります。

組織は、各潜在的な貢献者にプライマリリポジトリに書き込み許可を付与することはできないため、一般の人々は元のリポジトリのみを表示できます。フォークは、ユーザーが作成できる元のリポジトリのコピーです。ユーザーは、自分のフォークの許可を読み書きしています。

通常、プログラミングはGitHubインターフェイスで直接ではなくローカルマシン(または仮想マシン)で行われるため、通常、フォークリポジトリのクローンが作成されます。

貢献者がローカルレプリカの変更を提出すると、Githubのフォークリポジトリにプッシュする必要があります(これは、書き込み許可のために可能です)。次に、フォークリポジトリから元のリポジトリまでのプル要求を作成します。

フォークリポジトリを最新の状態に保ちます

元のリポジトリが他の誰かのコードで更新された場合(フォークが作成された後)、これらの新しいコミットはフォークリポジトリに自動的に表示されません。これらの変更を最初にダウンロードしてローカルリポジトリにマージし、次にフォークリポジトリにプッシュする必要があります。

upstream歴史的な理由で、ローカルリポジトリでは、元のリポジトリoriginとフォークリポジトリ

のリモートリポジトリに名前を付けました。

upstream理想的には、フォークリポジトリまたはローカルリポジトリのメインブランチに直接コミットしないでください。このブランチは、更新コードを

から保存するためにのみ使用する必要があります。すべての変更は、新しい機能またはエラーブランチで行い、フォークされたリポジトリに同じ名前のブランチにプッシュする必要があります。

したがって、次の手順は、元のリポジトリからの最新のコミットでフォーキングリポジトリを更新するのに役立ちます。

  • upstreamのメインブランチからローカルリポジトリのメインブランチを引く
  • ローカルリポジトリのメインブランチからフォークリポジトリのメインブランチへのプッシュ
これらの手順は、リポジトリを分岐し、ローカルマシンのフォークリポジトリをクローン化したと想定しています。

デモンストレーションについては、GitHubでE-Cidadaniaのリポジトリを使用します。

ステップ1:倉庫をフォーク

リポジトリをフォークするには、フォークボタン(スクリーンショットの右上隅)をクリックする必要があります。

Quick Tip: Sync a GitHub Fork via the Command Line

ステップ2:フォークリポジトリをクローン

フォークリポジトリをクローンするには、最初にドロップダウンメニュー(下のスクリーンショットに示すように)からプロトコルを選択し、リンクをコピーする必要があります。このデモンストレーションでは、SSHプロトコルを選択します。

Quick Tip: Sync a GitHub Fork via the Command Line

端子を開き、次のコマンドを実行します

ステップ3:元のリポジトリへのリンク
git clone git@github.com:sdaityari/e-cidadania.git
ログイン後にコピー

次に、元のリポジトリから変更を取得できるように、ローカルリポジトリを元のリポジトリにリンクする必要があります。これは、

リモートリポジトリを追加することによって行われます。まず、元のリポジトリからSSHリンクをコピーし、次のコマンドを実行してリモートリポジトリを追加します。

upstreamリモートリポジトリが追加されていることを確認するには、次のコマンドを実行してリモートリポジトリリストを確認してください。

git remote add upstream git@github.com:cidadania/e-cidadania.git
ログイン後にコピー
出力は次のようになります

ステップ4:
git remote -v
ログイン後にコピー
(元のリポジトリ)

からの変更をプルします

元のリポジトリのメインブランチに新しいコミットがあり、フォークリポジトリにコミットがない場合、フォークリポジトリのページにgithubメッセージが表示されます。スクリーンショットでは、「このブランチはシダダニアの後ろに遅れている:マスター36コミット」というメッセージを見ることができます。
<code>origin  git@github.com:sdaityari/e-cidadania.git (fetch)
origin  git@github.com:sdaityari/e-cidadania.git (push)
upstream    git@github.com:cidadania/e-cidadania.git (fetch)
upstream    git@github.com:cidadania/e-cidadania.git (push)</code>
ログイン後にコピー

upstream これらの変更をローカルリポジトリに引くには、次のコマンドを実行します。

このコマンドは、マスターブランチを

リモートリポジトリから更新します。

ステップ5:変更をプッシュQuick Tip: Sync a GitHub Fork via the Command Line (Forked Repository)

にプッシュします

これらの更新を元のリポジトリからフォークリポジトリにプッシュするには、次のコマンドを実行するだけです。

git pull upstream master
ログイン後にコピー
変更が更新されていることを確認するには、GitHubのForked Repositoryページに再度アクセスしてください!

upstream

originメッセージ「このブランチはシダダニアと一致しています:マスター」は、フォークリポジトリに追加されたメインブランチが変更されたことを示します。

コマンドラインを介してGithub Forkリポジトリの同期時に

FAQ(FAQ)

(FAQパーツは長すぎて擬似オリジナルの目標と一致しないため、ここでは省略されています。PAQパーツは必要に応じて再編成および書き直すことができますが、情報は情報が完成していることを確認する必要があります。意図は変更されていません。)
git push origin master
ログイン後にコピー

以上がクイックヒント:コマンドラインを介してgithubフォークを同期しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート