LoginSignup
1
2

More than 5 years have passed since last update.

Gitを少しずつ覚える

Last updated at Posted at 2017-10-05

この記事は今から30分の時間制限で書き,時間が終わったら公開します.
後から見直して,修正することになると思います.

この記事ではGitを知らないけど,Gitがどうなっているかを知りたい人が,使いながら理解する方法を書きます.

Gitの簡単な説明

Gitはバージョン管理ソフトです.
あるフォルダを「バージョン管理下」に指定すると,そこにあるファイルの変更を追跡・記録してくれるようなソフトになります.
他のバージョン管理ソフトとして,Subversionとかがあります.

Gitのインストール

Windowsだったら「Git for Windows」をダウンロード・インストールします.
公式ページからダウンロードできます1
インストーラを起動するとインストールできます.インストールの設定ではautoCRLFを無効にした方がいいでしょう.

Gitクライアントについて

Gitの使い方としてはターミナルからコマンドを打ち込んで使うのをおすすめします.GitのGUIクライアントもありますが,Gitがどうなっているかを理解するためには,CUIの方がいいと思います.

バージョン管理するデータを決める

Gitを使って覚えるためには,あなたの普段使っているデータをバージョン管理してみるのがいいです.毎日開くフォルダを,1つ選んでください.容量は,数千ファイル,数百MBぐらいだったらあまり重くならないと思います2
ソースコードなど,テキストファイル中心だといいのですが,エクセル等,バイナリファイルでも大丈夫です.
大事なのは普段使うデータをGitで管理しようとすることです.

そのフォルダを開いて,右クリックして「Git Bash Here」を押してください.
次に,git initを実行してください.これによってリポジトリが作成され,カレントディレクトリが作業ツリーになります.

最初に覚えるコマンド

現在のフォルダの状態を記録(コミット)するコマンドを最初に覚えましょう.次のコマンドです.

git add --all
git commit -a -m [メッセージ]

メッセージが思いつかなかったら1005みたいな日付でもいいです.これを最低でも1日に1回はやってみましょう.

次に覚えるコマンド

最後のコミットと現在のフォルダの状態の差分を確認してみましょう.次のコマンドです.
git diff

また,git statusで「working tree clean」と出れば「最後のコミットと現在のフォルダの状態が同じ」です.これは「仕事してない」という意味ではなく,「準備完了」ぐらいの意味です.

次に覚えるコマンド

次は履歴を表示するコマンドです.

git logと入力すると,コミットの一覧が表示されます.コミットの日付,メッセージ等が表示されます.
各コミットの変更したファイルを表示するにはgit log --name-onlyとします.
各コミットの差分を表示するにはgit log -pとします.

次に覚えるコマンド

(必要がなかったら飛ばしてください)過去の状態のファイルを取得してみましょう.

git checkout [ハッシュ] -- ファイル名

で,特定のコミットの特定のファイルを復元できます.「working tree clean」の状態からはじめるとよいと思います.

次に覚えるコマンド

次はブランチを使ってみましょう.ブランチとは,作業ディレクトリの複数の状態を切り替える機能です.新しいブランチを作るには次のコマンドを実行します.

git checkout -b [ブランチ名]

Git Bashの場合はプロンプトに現在いるブランチ名が表示されます.
ブランチの切り替え(作業ツリーをブランチの状態にする)は「working tree clean」から次のコマンドを実行します.
git checkout [ブランチ名]


  1. scmはsource code managementの略だと思います 

  2. マシンスペックと使う人の時間感覚による 

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2