図1は、Gitは SVNと比較しました
SVNは、集中型のバージョン管理、一般的なツール、バージョンコントロールサーバーサーバーが切断された場合、唯一の新しいクライアントからアップロードします。
Gitはある分散型バージョン管理、ツールの典型的なローカルバージョン管理を完了することができるようになり、ローカルコンピュータストアは、単一障害点を回避するために、提出のすべての歴史を持っています。
SVNは、インクリメンタル管理アプローチを使用し、方法Gitは、ファイルシステムのスナップショットを取ります。
Gitは、チームの開発者の貢献の外にコードを見直し、SVNすることはできません。
2、Gitの利点
操作のほとんどはネットワーキングせずに、ローカルに実行します
整合性の保証
できるだけ多くのではなく、削除または変更データとしてデータを追加します
分岐動作は非常にスムーズかつ効率的です
Linuxのコマンドと完全互換
3、Gitのクライアントのインストール
4、Gitの局所構造
Gitは次のように3つのローカルエリアは、図に行きました。
ワークスペース:ライト・コード、所定の位置にコードを修正し、ワークスペースに新しいファイル
テンポラリー・エリア:まだ将来的に提出する予定で提出するステージングエリアに作業領域から追加するのgit addコマンドを実行し、ステージング領域を引き出すことができ提出することができます
地元の図書館:gitのは、地元の図書館にステージング領域からコミットするcommitコマンドを実行し、各バージョンの履歴を保存
5、Gitのとコードホスティングセンター
GitのとGitHubには、GitHubには、Gitのホスティングセンターのコードで、2つの完全に異なるものです。ネットワーククラウド外部環境の下で、GitLabケアセンターを構築することができますLAN環境では、コードとコードはGitHubのホスティングセンターとして使用することもできます。センターをホスティングしているタスクのコードがリモートリポジトリを維持する手助けをすることです。
チーム内では、次の通り:
、ローカルライブラリAを作成し、ローカルリモートリポジトリBクローンからのケアセンターのリモートリポジトリB、およびリモートリポジトリBにコンテンツAプッシュ、Bを(自動的にローカルライブラリを作成し)、改訂されたコードがローカルライブラリに送信さ作成しますそして、リモートライブラリBへのプッシュは、リモートリザーバーに、Bプッシュ(BがBチーム(最初のB)を招待参加チームに参加する必要性に直接プッシュしていない)、ローカルに爪を引っ張って引っ張ることができます。
クロスチームコラボレーション、として、次のとおりです。
、ローカルライブラリAを作成ケアセンターにリモートリポジトリBを作成し、リモートリポジトリBフォーク(コピー)リモートライブラリCからリモートリポジトリB、B(ないチーム)に対するコンテンツAプッシュ(Cまた)自動的にローカルデータベースを作成します(ローカルにCクローンのコードホスティングセンター)、Bには、地元の図書館に提出した後にコードを変更し、リモートライブラリCにプッシュし、後にオンラインのプル、審査への要求を開始します人々のチームが変更点の酢酸含量を引くことがリモートデータベースBにマージ(併合)。