ローカル倉庫とリモート倉庫間の接続を確立する方法を共有する前に、今回はリモート参照からクローン、プル、およびその他の操作を共有する方法を共有します
すでにリモート ウェアハウスがある場合は、
ローカルに直接
複製できます。
コマンド: 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 ファイルを変更します
リモートリポジトリに送信
別のローカル倉庫で同じファイルと同じ行を変更する
この時点で、ローカルの倉庫に提出し、リモートの倉庫から引き出します。
このとき、マージ競合の問題が発生します。
ファイルの表示は、ブランチ マージの競合の問題と一致しているため、解決策も一致しています。ファイルの内容を変更して再送信する
リモート倉庫に再提出する
別の倉庫に引っ張るだけです。