基本
1つのGIT分散バージョン管理システム
2つの集中型および分散型バージョン管理システムの違いは何ですか?
一元化バージョンコントロールシステム:中央サーバー上の中央リポジトリ、働くことがネットワークに接続されている必要があり、あなたが作業する前に、中央のサーバーから最新バージョンを取得する必要があります
分散型バージョン管理システム:なし「中央サーバは、」一人一人のコンピュータが完全リポジトリです、ありません。セキュリティはへの集中よりもはるかに高いです。人々が協力したときに、「中央サーバー」コンピュータとして作用することによって、すべての人を交換します変更。
3リポジトリとは何ですか?
リポジトリ、また倉庫として知られ、英語がリポジトリと呼ばれます。リポジトリは、Gitの管理は、各ファイルへの変更を追跡削除など、歴史をたどる容易にすることができている、多くのファイルのディレクトリである「復元します。」
フォルダの後、我々はコマンドラインから実行はinit gitの、カレントディレクトリは隠しフォルダです.gitディレクトリを生成します。ディレクトリ内を追跡するためのGitリポジトリ管理。
4コミット
コミットは、として理解することができる「スナップショットを保存します。」
Gitは番号が、SHA1計算数は、この数と16進数をインクリメントしない...... 1,2,3のIDをコミット。
バージョン5
HEADは現在のリビジョンです
HEAD ^は、以前のバージョンを表し
HEAD ^^は、最後のバージョンを表し、
HEAD〜100は、最初の100バージョンを表し
6 Gitのワークエリア、ステージングエリア
ワークスペース:フォルダ内のコンピュータ見える(ディレクトリ)
リポジトリ:ワークスペース隠しディレクトリ.git
エリアをステージング:リポジトリに、芸名
ファイル名を追加gitのを実行し、それがワークスペースファイルをステージング領域に配置されて変更します。
gitのを実行します-m「XXX」をコミット、それは一時的な提出の面積を変更します。
7 masterブランチとHEADのポインタ
フォルダの後、我々はコマンドラインから実行はinit gitの、カレントディレクトリは.gitのディレクトリが生成されます。
リポジトリでは、Gitは自動的に私たちのために第一分岐マスター、およびHEADポインタを指しているのマスターを作成しました。
マスターへのHEADポイントは、マスターポインティングが提出しました。HEADは現在のブランチを指します。
8つの支店とHEAD
Gitのブランチは非常に高速に作成されました!これは、ポインタによって達成されます。GitのブランチDEVを作成する場合は、GitはマスターへのポインタDEV、同じ提出ポイントを作成します。
支店:各提出形成のタイムライン。メインブランチは、また、masterブランチと呼ばれます。
9ポインタ
内部GitはHEADの現在のバージョンを指すポインタを持っています
本質的に、そのポインタの動作を作成、変更、コミット、マージ、削除、およびするGitのブランチ。
修正10
Gitはファイルではなく、追跡と管理を変更することです
11遠隔倉庫
ローカル倉庫、地元の倉庫と関連付けられたリモートリポジトリは、リモートリポジトリのクローンを作成します
12 Gitのシンボル<<<<<<<
、=======
、>>>>>>>标记出不同分支的内容。
一般的に、現在の内容<<<<<<<分岐は、二つのブランチの競合を分離する=======コンテンツ、コンテンツを>>>>>>>分枝
13のブランチはマージ
早送りモードgitのマージ:あなたはブランチを削除すると、それが分岐情報を失うことになる(行方不明提出履歴)
--no-FFのgitのマージモード(二つの枝それぞれの新しい提出):最初に手動で競合を解決した後、提出、それは新しい(歴史が存在しますコミット)を作成します。
14クローンリモートリポジトリ
Gitは自動的にマスターのローカルブランチとリモートのmasterブランチの関連は、リモート倉庫のデフォルト名は、原点です。
枝をプッシュ:提出のすべてのローカルブランチにリモートリポジトリにプッシュ。
ローカルブランチとリンク関係のリモートブランチ: - 設定 - 上流へ
15 rebase变基
特長は、操作をリベース:直線で歴史「仕上げ」をコミット発散し、それがより直感的に見えます。
欠点は、地元の分岐部に提出されたが変更されました。
16枚のラベル
スナップショットリポジトリ。それはそれはコミットと一緒にバインドされ、基本的にコミットを指すポインタです。
17 .gitignoreファイル
特殊なファイル.gitignoreあなたのGitのワークスペースのルートディレクトリに作成され、その後、塗りつぶしにファイル名を無視するように、Gitは自動的にこれらのファイルを無視します。
.gitignore .gitignoreファイルのために何ができるリポジトリとバージョン管理に置くために自分自身を提出
参考文献: