MS_Git - NetDevInfraWGinOSSConsortium/NetDevInfraWiki GitHub Wiki

Git

概要

分散型の 構成管理ツール

詳細

下記リンクを、ご参照下さい。

補足(本ページの位置付けと、Git の要点): 本ページは
**リンク集(ハブ)**であり、利用ノウハウは開発基盤部会 Wiki 側にある。
ここでは「なぜ分散型なのか」だけ補っておく。

【集中型と分散型】★
   集中型(SVN / TFVC)
     サーバ ── 履歴はサーバにだけある
       ↑↓ 作業コピー(履歴を持たない)
     → コミットには【サーバへの接続が必要】
     → ブランチ/マージが重い

   分散型(Git)★
     サーバ(リモート)
       ↑↓ push / pull
     ローカル リポジトリ ── 【完全な履歴のコピー】
       ↑↓ commit / checkout
     作業ツリー
     → 【オフラインでコミットできる】
     → ブランチは「コミットを指すポインタ」なので
       作成・切替が【一瞬】★
     → これが Git 普及の決定打になった
【Git が速い理由】
   ・ブランチ = 40 バイトのファイル 1 つ
     (最新コミットのハッシュを書いてあるだけ)
   ・差分ではなく【スナップショット】を保存し、
     同一内容は同じオブジェクトを共有する
   ・すべてがローカルにあるので
     log / diff / blame にネットワークが要らない ★
【選定の観点】
   → [SVN vs Git vs TFS](MS_SVNvsGitvsTFS) を参照。
     現在は Git が事実上の標準であり、
     SVN が有利なのは
     【巨大バイナリ / 部分チェックアウト /
       ファイル ロック】が要る場合に限られる。

参考

開発基盤部会 Wiki

プロジェクトで使用している利用ノウハウをまとめています。


Tags: 移行, ツール類, 構成管理ツール, CI, IaC

⚠️ **GitHub.com Fallback** ⚠️