Git、GitHub、GitLabの関係と違い

1バージョン管理の概念

1.1バージョン管理が必要なのはなぜですか?

      以前は、バージョン管理が使用されていなかった場合、通常、プロジェクトのルートディレクトリでプロジェクトに名前を付けていました:project_v1、project_v1.1、project_v2など。この方法で、プロジェクトのさまざまなバージョンの変更を記録しました。このバージョンでのアイテムの追加、変更、削除の操作を記録するために、異なるバージョンのファイルに説明が書き込まれます。このような操作は非常に複雑であり、人間以外の要因によるファイルの損失などの事故が発生する場合があります。バージョン管理システムを使用すると、複雑な操作を手動で実行する必要がなくなり、ファイル損失の事故を心配する必要がありません。履歴の特定の瞬間に戻ることができます。

1.2バージョン管理の概念

      バージョン管理を使用して、エンジニアリング設計の分野でエンジニアリング設計図の設計プロセスを管理します。バージョン管理は、IT開発中のコードのバージョン反復を管理するためにも使用できます。適切なバージョン管理ツールには、次の機能が必要です。
      (1)
      複数の人が並行してサーバー側の同じファイルを変更するために共同作業します。
      (2)データバックアップ
      は、ディレクトリとファイルの現在のステータスを保存するだけでなく、すべてのコミットの履歴ステータスも保存します。
      (3)バージョン管理
      は、各バージョンのファイル情報を保存するときに重複データを保存する必要があります。これにより、ストレージスペースを節約し、運用効率を向上させることができます。
      (4)権限制御権限制御は      、チーム
     の開発に参加するユーザーに対して実行されます。
チーム外の開発者によって提供されたコードは、Gitに固有のレビューされます。
      (5)履歴メカニズム
     修飾子、変更時間、変更内容、およびログ情報を表示します。ローカルファイルを特定の履歴状態に復元します。
      (6)ブランチ管理
      により、開発チームは作業中に複数の生産ラインで同時にタスクを進めることができ、効率がさらに向上します。

1.3バージョン管理ツール

     バージョン管理システムは、次の2つのカテゴリに分類されます。

  • 集中型バージョン管理システム
         集中型バージョン管理システムでは、バージョンライブラリは中央サーバーに一元的に保存されます。作業するときは、自分のコンピューターを使用するため、最初に中央サーバーから最新バージョンを取得してから、作業を開始する必要があります、作業が完了するまで待ってから、中央サーバーに作業を送信します。ここでLiao Xuefeng先生からの類推を借りると、中央サーバーは図書館のようなものです。1冊の本を変更したい場合は、まず図書館から本を借りてから変更し、それを図書館に戻す必要があります。 。
         短所:集中型バージョン管理システムの最大の問題の1つは、ネットワークに接続して機能させる必要があるため、比較的貧弱なネットワーク環境で集中型バージョン管理システムを使用することは頭痛の種です。
    集中型バージョン管理システム
  • 分散バージョン管理システム
         分散バージョン管理システムには中央サーバーの概念がありません。関連するクライアントを使用して、最新のファイルだけでなく、コードウェアハウスの完全なミラーリングを抽出します。これは、すべてのコンピューターに相当します。リポジトリのバージョン。このようにして、ミラーリングされたローカルリポジトリを使用して、連携して動作するすべてのサーバーを復元できます。また、リポジトリはローカルコンピュータ上にあるため、ネットワーク環境が悪い場合でも心配する必要はありません。
         分散バージョン管理システムには中央サーバーの概念がありません。関連するクライアントを使用して、最新のファイルを抽出するだけでなく、コードウェアハウスの完全なミラーリングを実行します。これは、全員のコンピューターに相当する完全なバージョンライブラリです。いずれかのサーバーが一緒に機能しない場合、ミラーリングされたローカルウェアハウスから回復できます。また、リポジトリはローカルコンピュータ上にあるため、ネットワーク環境が悪い場合でも心配する必要はありません。
    分散バージョン管理システム

2 Gitとは何ですか?

2.1 Gitの概要

     Gitはバージョン管理システムであり、分散バージョン管理システムの一種です。公式ウェブサイトのアドレス:git- 公式ウェブサイト
ここに画像の説明を挿入
     Gitの利点:

  •      ほとんどの操作はローカルで行われ、インターネット接続は必要ありません
  •      完全性保証
  •      データを削除または変更する代わりに、可能な限りデータを追加します
  •      分岐操作は非常に高速でスムーズです
  •      Linuxコマンドとの完全な互換性

2.1 Gitのインストール

次のウェブサイトには詳細な紹介があります。詳細な紹介もあり、すぐに始めるのに便利です:Git-Book
Git-Book

3 GitHubとGitLabの概要

     GitHubのとGitLabは、WebベースのGitリポジトリいる
     類似点:両方は、開発チームの保存、共有、集中クラウドストレージサイトが公開との共同開発プロジェクトを提供し、オープンソース・プロジェクトを共有するためのプラットフォームを提供します。
     違い:GitHubはオープンソースコードベースとして、900万人を超える開発者ユーザーがいます。これは今でも最もホットなオープンソースプロジェクトホスティングプラットフォームです。GitHubは、パブリックウェアハウスとプライベートウェアハウスの両方を提供しますが、プライベートウェアハウスを使用する場合は、支払う必要があります。
     GitLabはこの問題を解決し、その上に無料のプライベート倉庫を作成できます。彼らのコードリポジトリのGitLab開発チームはに比べて、より多くの制御を持ってGitHubに、それは多くの機能を備えています。

  • 倉庫許可の無料設定を許可します。
  • ユーザーがプロジェクトのコードの一部を共有することを選択できるようにします。
  • ユーザーがプロジェクトのアクセス権を設定して、セキュリティをさらに向上させることができます。
  • チーム全体の改善の進捗状況を設定できます。
  • innersourcingすることにより、人々が理解し得る範囲内のリソースを訪問しないわけにはいきません;
    概要は、プライバシーのコードビューから、GitLabは、より良い選択です。しかし、オープンソースプロジェクトの場合、GitHubはコードホスティングの最初の選択肢です。

3参考記事

Git、GitHub、GitLabの関係と違い

元の記事を34件公開 賞賛された4件 30,000回以上の閲覧

おすすめ

転載: blog.csdn.net/leaeason/article/details/104907231