.gitignoreの設定をしてみる

.gitと同じフォルダに存在する.gitignoreを設定することにより、
gitで管理したくないフォルダ、ファイルを指定することができる。

たとえば、php_errors.logをGitで管理したくない場合。
まずは、.gitignoreに設定しない状態で、git statusを実行する。
すると、php_errors.logが、まだaddされていないと表示される。


$ git status
Untracked files:
  (use "git add ..." to include in what will be committed)

        php_errors.log

次に、.gitignoreに無視したい、ファイル名「php_errors.log」を追加する。

その後、もう一度、git statusを実行すると、先ほどの結果が出力されない。簡単。

Gitでローカルリポジトリにリモートリポジトリを登録する

Gitでローカルリポジトリにリモートリポジトリを登録する。


$ git remote add origin [.gitのリモートのパス]

ローカルリポジトリにcommitしてあるファイルを、リモートリポジトリにも反映する。


$ git push origin master

Gitで修正した差分を確認するとき

Gitで修正した差分を確認するとき

ワークツリーとインデックスの差分を確認するときは、git diffコマンドを実行する。


$ git status
Changes not staged for commit:
        modified:   index.html
$ git diff
diff --git a/index.html b/index.html
index 30c6a2e..993642e 100644
--- a/index.html
+++ b/index.html
@@ -6,5 +6,6 @@
<h1>Hello Git!!</h1>
+ <p>for git diff</p>
</body>

変更部分を確認して問題ないので、ワークツリーからインデックスに登録する。


$ git add .
$ git status
On branch master
Changes to be committed:
  (use "git reset HEAD ..." to unstage)
        modified:   index.html

インデックスに登録したので、git diffで確認すると、差分がでない。
つまり、git diffでみれるのは、ワークツリーとインデックスの差分を確認することになる。

インデックスとローカルリポジトリの差分を確認するには、$ git diff –cachedを使う。

Gitのローカルレポジトリで管理する一連の流れ

Gitのローカルレポジトリで管理する一連の流れ。

管理するディレクトリに移動して以下のコマンドを実行する。


$ git init
Initialized empty Git repository in /[ディレクトリのパス]/.git/

Gitで管理されているかどうかは、ディレクトリ名の隣に(master)と付与されていれば、管理されていると判断できる。


// git init前
hogehoge $
// git init後
hogehoge (master) $

リモートリポジトリに更新するindex.htmlファイルを作成する。
作成後、git statusコマンドで状態を確認する。


$ git status
On branch master
Initial commit
Untracked files:
  (use "git add ..." to include in what will be committed)
        index.html
nothing added to commit but untracked files present (use "git add" to track)

リモートリポジトリに更新するため、ワークツリーに存在するindex.htmlをgit addコマンドでインデックスに登録する。
その後、再度状態を確認する。


$ git add index.html
$ git status
On branch master
Initial commit
Changes to be committed:
  (use "git rm --cached ..." to unstage)
        new file:   index.html

リモートリポジトリに更新(commit)する準備が整ったので、git commitコマンドを実行する。
commit後に状態を確認すると、ワーキングツリーがclean(なにも変更したものがない状態)ということがわかる。


$ git commit -m "first commit"
[master (root-commit) e47657e] first commit
 1 file changed, 10 insertions(+)
 create mode 100644 index.html
$ git status
On branch master
nothing to commit, working tree clean

Gitの設定の設定方法と確認方法

Gitの設定の設定方法と確認方法。

Gitの設定の設定方法は、直接.gitconfigを設定する。または、Gitコマンドによって設定する。
global設定を変更する場合


// 設定の変更
$ git config --global user.name "hogehoge"
// 設定の確認
$ git config --global -l
user.name=hogehoge

local設定を変更する場合


// 設定の変更
$ git config --local user.name "fugafuga"
// 設定の確認
$ git config --local -l
user.name=fugafuga

Gitの設定の確認方法。


// globalの場合
$ less .gitconfigのパス
$ git config --global -l
// localの場合
$ less .git/configのパス
$ git config --local -l

.gitignoreをまとめたプロジェクト

.gitignoreをまとめたプロジェクト
https://github.com/github/gitignore

.gitignoreとは、そのファイル名の通り、Gitで管理しないフォルダ、ファイルを指定するファイル。
一般的に無視する設定のフォルダ、ファイルを上記のプロジェクトでまとめている。

.classとか、.log、/tmpなどは普通は不要なので、無視するべき。