リポジトリを作る
git init
.gitというディレクトリができ空のレポジトリを作成する。
そうして.gitを作成する際はプロジェクトのトップのディレクトリでこのコマンドを入力する必要がある。
なのでファイルがないもない状態でgit init
をしてはいけない。
必ずトップのディクトリを作成した後にgit initを入力
する。
何もファイルのない状態からの流れはこうだ。
mkdir myProject
cd myProject
git init
ファイルを作成、そのファイルに移動、そこでgit init
を入力。
演習
1.myProjectという名前のディレクトリを使って、その中にcdし、そこでgit initしてリポジトリを作成しよう。このプロジェクトをmyProjectと呼ぶことにする。
*********::@mbp ~ % mkdir myProject
**********@mbp ~ % ls
.
.
.
myProject
*********@mbp ~ % cd myProject
***********@mbp myProject % git init
Initialized empty Git repository in /Users/*********/myProject/.git/
これで成功!
2.作られた.gitディレクトリの中にcdして、どんなファイルやディレクトリがあるか見てみよう。
***********@mbp myProject % cd .git
***********@mbp .git % ls
HEAD hooks refs
config info
description objects
中身に何もないと思っていたが何かあった。
その中の中身も見たHEAD,config,description以外には中にファイルがあった。
タイポかもしれない。
ファイルやディレクトリを管理下に入れる
ファイルやディレクトリをステージに入れる
git add ファイル...
git add ディレクトリ...
作業ツリーにあるファイル(又はディレクトリ)をステージする
ステージする
とは
チェックインすること
ファイルの今の状態を保存しておきたい時ファイルの内容をバージョン管理システムに入れる行為
仮にREADMEというファイルをステージするには
git add README
とする。
ディレクトリをステージする場合
そのディレクトリ以下にある全てのファイルをディレクトリをステージに入れる。
空のディレクトリをGitは管理しない
Gitは空のディレクトリを管理しない。
そうしたい場合は、
・そのディレクトリにダミーのファイルを入れる
・.gitignoreファイルを入れてステージする
どちらの場合もファイルの中身は空でいい。
プロジェクトの全てのファイルとディレクトリをGitの管理下におく
git add .
既にプロジェクトのファイルやディレクトリが作業ツリーにある場合、作業ツリーのトップでおこなとタイトルのようになる。
ただしこれには欠点がある。
それは余計なものまでGitの管理下に入ってしまう。
思ったこと
余計なものまでGitの管理下に入ってしまうのは一体なぜダメなのだろうか?
まぁ余計なものは入ってほしくはないが...
演習
以下のような内容を持つファイルREADMEをmyProjectの中に作り、それをgit addでステージしよう。
***********@mbp myProject % vim README
***********@mbp myProject % git add README
i
を入力 書き込み
This is a test project.
esc
を入力 書き込み終了
:wq
で内容を保存