LinuxでGitリポジトリをプルする方法

click fraud protection

Gitは、プロジェクトを共有する方法のバージョン管理プロセスを定義します。 Gitプロジェクトをホストできる多くのWebサイトが存在します。 GitHubは最も人気のあるオプションであり、Bitbucketは別の人気のある代替手段であり、どちらも無制限のパブリックまたはプライベートリポジトリを作成できる無料のアカウントを許可します。 GitLabは、サードパーティのホスティングに依存することなくプライベート開発を可能にするセルフホストの代替手段を提供します。

最初にGitリポジトリをダウンロードするプロセスは、クローン作成と呼ばれます。 クローン作成には、その時点でのリポジトリに関するすべての情報が含まれますが、リポジトリを長期にわたって最新の状態に保つには、新しいバージョンをプルダウンする必要があります。 これを行うには、リポジトリのローカルバージョンを含むディレクトリでターミナルウィンドウを開き、コマンド「gitpull」を入力します。

リポジトリの更新バージョンをダウンロードしたいだけの場合、このコマンドの操作は特に簡単です。 ローカルバージョンは、リモートバージョンと一致するように更新されます。 ただし、ローカルバージョンに変更を加えた場合は、問題が発生する可能性があります。

コマンド「gitpull」は、実際には2つの別々のコマンド「gitfetch」と「gitmergeFETCHHEAD」を実行します。 サブコマンド「gitfetch」は、特にオンラインリポジトリから最新バージョンを取得し、一時的に保存します。 次に、サブコマンド「git merge FETCH HEAD」は、ローカルの変更をダウンロードされたバージョンとマージします。新しいコミットが優先されます。

ヒント:「gitcommit」は変更の送信です。同じまたは異なることを行う複数のローカルおよびリモートのコミットを持つことができます。 ローカルコミットは、変更がプッシュされるまでリモートバージョンには表示されません。 各コミットは、行われた変更を正確に詳細に示し、タイムスタンプを含みます。

ローカルバージョンとリモートバージョン間の競合

理想的には、マージシナリオでは、競合は発生せず、マージプロセスは自動的に完了します。 変更がほとんど行われていない場合、またはローカルの変更がリモートの変更に干渉しない場合、マージは特に簡単です。 ただし、コードの同じ部分に競合する複雑な変更がある場合、Gitはマージエラーをスローします。

この時点で、コマンド「git merge –abort」を使用してマージを中止するか、競合を手動で解決してみてください。 コマンド「gitmergetool」と「gitdiff」は、役立つはずの違いのグラフィカルな例を提供します マージを可能にするために手動で適用する必要がある変更をできるだけ簡単に確認できるようにする 完了。 すべての競合を解決したら、コマンド「git merge –continue」を入力してマージを完了します。

コマンド「gitmergetool」は、このようなグラフィカルツールを開き、競合を手動で解決するのに役立ちます。