git リモート ウェアハウスの基本操作とリモート マージ競合の問題の解決

ローカル倉庫とリモート倉庫間の接続を確立する方法を共有する前に、今回はリモート参照からクローン、プル、およびその他の操作を共有する方法を共有します

すでにリモート ウェアハウスがある場合は、 ローカルに直接 複製できます。
        コマンド: git clone < リポジトリ パス > [ ローカル ディレクトリ ]
        ローカル ディレクトリは省略可能で、ディレクトリが自動的に生成されます。ディレクトリの名前は、倉庫の名前です。
デスクトップの右クリックから git bash を起動する必要があります
ウェアハウス パスは SSH アドレスです
このように、リモートの倉庫から複製されたフォルダがデスクトップに表示されます
リモート ブランチはローカル ブランチと同じです.マージ操作 を実行できます が、操作を実行する前に、リモート ウェアハウス内のすべての更新をローカルにダウンロードする必要があります.
        フェッチコマンド: git fetch [リモート名] [ブランチ名]
        グラブ コマンドは、ウェアハウス内のすべての更新をマージせずにローカルでグラブすることです。
        リモート名とブランチ名が指定されていない場合、すべてのブランチがフェッチされます。
        プルコマンド: git pull [リモート名] [ブランチ名]
        プル コマンドは、リモート ウェアハウスの変更をローカルにプルし、自動的にマージすることです。これは、フェッチ + マージと同等です。
        リモート名とブランチ名が指定されていない場合は、すべてを取得して現在のブランチを更新します。

 

ローカルでテキストを作成し、ローカル リポジトリに送信します。

ローカル倉庫をリモート倉庫に提出する

しかし、他の倉庫にはこの変更の内容がないため、リモートの倉庫をプルする必要があります

 git fetch コマンドの使用例を次に示します。

新しいコンテンツが取得されたことがわかりますが、現時点では、ローカル ブランチとリモート ウェアハウスのブランチは同じ変更を受けていないため、この時点でマージが必要です。

これには 2 つのコマンドを入力する必要があり、これは少し面倒です。そのため、pull と呼ばれる、グラブしてマージできる git pull コマンドが git 側にあります。 

 

        他のウェアハウス プログラムで file04.txt ファイルを作成し、git pull を実行して、リモート ウェアハウスの変更されたコンテンツが取得されるだけでなく、ローカル ブランチとリモート ウェアハウスのブランチがマージされることを確認します。 

        次に、リモート ウェアハウスでのマージ競合の問題を紹介しましょう。

        ある期間、ユーザー A B が同じファイルを変更し、同じ行位置のコードを変更すると、この時点でマージ競合が発生します。ユーザー A がローカルでコードを変更した後、まずリモート ウェアハウスにプッシュします。このとき、ユーザー B はコードをローカルで修正します。ローカル ウェアハウスに送信した後、リモート ウェアハウスにもプッシュする必要があります。このとき、 、ユーザー B は ユーザーA よりも遅いため、 リモート ブランチを最初にプルする必要があります。ウェアハウスの送信は、マージされた後にのみリモートブランチ。この時点で、マージ競合の問題が送信されます。ここでそれを示します。

 ローカル倉庫の file01.txt ファイルを変更します

 リモートリポジトリに送信

別のローカル倉庫で同じファイルと同じ行を変更する

この時点で、ローカルの倉庫に提出し、リモートの倉庫から引き出します。  

このとき、マージ競合の問題が発生します。

ファイルの表示は、ブランチ マージの競合の問題と一致しているため、解決策も一致しています。ファイルの内容を変更して再送信する

 

リモート倉庫に再提出する

 

別の倉庫に引っ張るだけです。 

おすすめ

転載: blog.csdn.net/qq_45526401/article/details/127562773