IMUZA.com

<<WordPress(ConoHa)<<はてなブログ

ホーム / Git入門 / Git をローカルで試してみる(使い方 初歩の初歩)

Git をローカルで試してみる(使い方 初歩の初歩)

2017/03/12 Git入門

前記事 > Git 初期設定

「プログラマーじゃないけど Git 入門」
次は、ローカルで Git を使ってみましょう。

  • git init
  • git add
  • git commit

git init

Git bash(インストールによってはコマンドプロンプトでもOK)を立ち上げ、適当なディレクトリに移動した後、

$ mkdir git-sample


$ cd git-sample/


$ git init
Initialized empty Git repository in ./git-sample/.git/

として、カレントディレクトリにリポジトリをつくります。表現の仕方はあるいは、ディレクトリをリポジトリ化するといいますか、これにより、カレントディレクトリに .gitディレクトリをつくられ、カレントディレクトリ内がバージョン管理できるようになります。.gitディレクトリの中は前回見たとおりです。

git add

カレントディレクトリに適当なテキストファイルをつくります。Windows ですから GUI のエディタで sample.txt などと保存し、続いて、

$ git add sample.txt

とします。このコマンド git addは、該当ファイル(指定によってはディレクトリ)をステージングエリアに追加すると表現されるようです。

Pro Git 日本語版電子書籍にある次の画像がそのイメージです。Stage Fixed と記載された行為になります。

Git – Gitの基本

ファイルをワーキングエリアからステージングエリアに登録し追跡を開始するという理解でいいと思います。git statusで状態を見てみますと、

$ git status
On branch master


Initial commit


Changes to be committed:
  (use "git rm --cached <file>..." to unstage)


        new file:   sample.txt

と表示され、sample.txt をコミットする準備ができている、つまりステージングエリアにあるということです。

で、そのときどんなファイルが作られるか見てみますと、

.git\index と .git\objects\f3\ハッシュ値? の2つのファイルがつくられます。再度git addとすればこの2つのファイルが上書きされます。

git statusのメッセージに、unstage の説明がありましたので、試しにやってみましょう。

$ git rm --cached sample.txt
rm 'sample.txt'


$ git status
On branch master


Initial commit


Untracked files:
  (use "git add <file>..." to include in what will be committed)


        sample.txt


nothing added to commit but untracked files present (use "git add" to track)

状態を見てみますと、Untracked つまり追跡されていないファイルがあるに変わります。.git内のファイルは、indexが書き換えられるだけです。

ということは、indexファイルにステージングエリアの情報が書き込まれているということでしょう。

再度git addしておきましょう。

git commit

次は、ステージングエリアのファイルの状態を保存するgit commitです。git commitだけですと、コミットメッセージを求めるエディタが立ち上がりますので、通常はgit commit -m "commit massage"とします。

$ git commit -m "最初のコミット"
[master (root-commit) 2d88c89] 最初のコミット
 1 file changed, 2 insertions(+)
 create mode 100644 sample.txt

試しに日本語のメッセージでコミットしてみました。ログを見てみます。

$ git log
commit 2d88c89aaa4aaebf88de79c433d10792b0a2ac8c
Author: ******* <*******@gmail.com>
Date:   Sun Mar 12 15:54:46 2017 +0900


    最初のコミット

これで sample.txt の現在の状態を保存し、Git で管理できるようにしたということでいいと思います。

.gitディレクトリ内を見てみましょう。

これを見ますと、多分、.git\objects\2d\88c89aaa4aaebf88de79c433d10792b0a2ac8cが現在のファイル状態が保存されている実態でしょう。

そして、.git\refs\heads\masterには2d88c89aaa4aaebf88de79c433d10792b0a2ac8cという数値が保存されていますので、これは上の実態のディレクトリとファイル名なんだと思います。

.git\COMMIT_EDITMSGにはコミットメッセージが保存されています。この場合は、

最初のコミット

となっています。

.git\logs\HEADと.git\logs\refs\heads\masterは現時点ではまったく同じ内容のファイルでログとして出力されるようです。コミットを重ねていくとどちらかが変化していくのかもしれません。

今回はここまでです。

Chromeでの日本語変換がおかしい件、Chrome57で解消
git add, commit 後の履歴を git log で見る
Twitter
Facebook
ブックマーク
LINEで送る

最初のサイドバー

最新記事

2022/07/29

WordPressでiframeが表示されない(解決)

2022/07/14

WordPressのデータベースを入れ替える

2022/07/7

WordPress:テーマをゼロから作ってみる(3)

2022/06/26

WordPress:Aレコード変更でウェブだけ他サーバへ移転

2022/06/13

WordPress Popular Posts 他のプラグインに変えたほうがいいかも

最新記事を一覧で見る

よく読まれている記事

よく読まれている記事を一覧で見る

カテゴリー

  • はてなブログ212
  • WebTips108
  • javascript95
  • Joomla!88
  • Windows68
  • CSS62
  • Joomla!更新53
  • Linux49
  • はてなテーマ45
  • Wordpress37
  • Plamo33
  • Google32
  • はてなプラグイン25
  • php19
  • Node.js18
  • SASS16
  • Ubuntu16
  • laravel415
  • Chrome10
  • cms-style10
  • iPhone9
  • genesis6
  • Git入門6
  • ConoHa WING5
  • Python4
  • Android4
  • SSD3
  • Docker3
  • スマートフォン3
  • Facebook3
  • Firefox3
  • 静的サイトジェネレーター3
  • Blankslate3
  • Mactype2
  • GitHub2
  • rails入門1
  • はてなブクマ1
  • Twitter1
  • 映画1
  • youtube1

Footer

My Web Sites

  • @半径とことこ60分
  • そんなには褒めないよ。映画評
  • IMUZA.com
  • GitHub

Another Sites

  • WordPress公式
  • WordPress関数リファレンス
  • PHPマニュアル

Contact Us

  • お問い合わせフォーム
  • Twitter
  • Facebook
  • Feedly

Copyright © 2022 · IMUZA.com