Git | 基本的な流れとコマンド一覧
Gitとは,プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムである.ソースコードの変更履歴を順々に記録し,いつ,だれが,どのファイルのどの箇所を変更したかが分かり,記録の際に変更箇所についてのメッセージを付与することもできる.必要であれば,変更履歴に基づき,ソースコードを戻すこともできる.
本記事では,Gitを利用する際の基本的な流れとコマンド一覧を以下に記す.
目次
Git利用の基本的な流れ
- 対象となるフォルダに移動し,リポジトリを新規作成する.隠しファイルなので,"ls -a"で存在を確認することができる.
- ファイル変更後,ステージングエリアに追加させる.
- ローカルリポジトリにコミットする.
- リモートリポジトリ(GitHub)にプッシュする.
特定のファイルをGitの管理から外す方法
“.gitignoreファイル"に指定することで,Gitの管理から外すことができる.
どのようなファイルが対象となる?
- 自動生成されるファイル
- パスワードが記載されているファイル
“.gitignoreファイル"の書き方
- #から始まる行はコメントと見なされ無視される
- 指定したファイルを除外する: xxx.html
- ルートディレクトリを指定する: /root.html
- ディレクトリ以下を除外する: dir/
コミットしてしまったファイルを管理から外す方法
git rmコマンドによって,ファイルを削除し,Gitの管理からも削除することができる.
- git rm ファイル名:ファイルを削除し,Gitの管理から削除することもできる
- git rm –cached ファイル名: ファイルは残し,Gitの管理から削除することができる.ただし,永続的にGitの管理から削除される場合には,".gitignore"に追記すること.
コマンド一覧
Gitを利用する際のコマンド一覧を以下に記す.
コマンド | 内容 |
---|---|
git init | リポジトリを新規作成する(対象となるフォルダに移動する必要あり).隠しファイルなので,"ls -a"で確認可能 |
git add ファイル名 | ファイル変更後,ステージングエリアに追加させる.複数追加させる際は,"git add ."とする.基本は1ファイル(1作業)ごとに実行するのがよい. |
git commit | ローカルリポジトリにコミットする.コミットのメッセージの入力画面は,Vimというエディターで開かれる(半角英数字に切り替え,"i"を入力すると書き込み可能.保存する際は,"ESC"ボタンを押し,":wp"を入力する).メッセージは,1行目に変更の概要,2行目は空白,3行目に変更理由を記載する. |
git status | Gitのリポジトリの状態を確認する.赤色:ステージにあげられていない変更分があることを示す.緑色:変更分がステージングエリアにあることを示す. |
git commit -v | 変更の詳細を確認することができる. |
git log | リポジトリにコミットされた履歴を確認することができる."j"と入力することで下に移動し,"k"と入力することで上に移動することができる. 【option】 ・git log –oneline: 1行で表示する(ハッシュ値とコミットメッセージ) ・git log -p index.html: ファイルの差分を表示する ・git log -n 3: 最新のコミットの履歴を3つ表示する ・git log –oneline -n 3: 最新のコミットの履歴を1行で表示する ・git log -p: どのファイルのどの箇所を変更したかが緑で表示される |
git rm ファイル名 | 削除したファイルをステージングエリアに追加させる. 【option】 ・git rm -r ディレクトリ名: ディレクトリも一緒に削除する ・git rm –cached ファイル名: ファイルは残すが,Gitの管理から削除する.永続的にGitの管理から削除される場合には,".gitignore"に追記すること. |
git diff | ファイルのステージとの変更差分を緑色で表示する.終了する場合は,"q"を押す. 【option】 ・git diff HEAD: ステージとコミットの差分を示す.コミット前に使用するのがよい. |
git remote add | ローカルリポジトリにリモートリポジトリを登録する. 例:git remote add origin https://github.com/user/repo.git |
git push | リモートリポジトリにプッシュする.(事前にGitHubでレポジトリを用意し,"git remote add origin https://xxxx"をコピーし,gitで貼り付け,実行することで登録される.その後,"git push -u origin master"を実行する) masterへ送信: git push origin master: ローカルリポジトリの内容をリモートリポジトリのマスターへ送信する. master以外のブランチ(featureブランチ)へ送信時: git push origin feature |
git reset HEAD ファイル名 | ステージの変更差分を元に戻す |
git checkout ファイル名 | 現在の最新のコミットに戻す.書き換えたけど,全部元に戻したいときに使う. 例) git rm abc.txtとし削除したけれど,元に戻したい場合には,以下流れで実行する. 1. git status: 緑色で削除されたabc.txtを確認できる 2. git reset HEAD abc.txt: ステージ変更差分を元に戻す 3. git status: 赤色で削除されたabc.txtを確認できる 4. git checkout: ローカルに削除したabc.txtを確認できる 5. git status: 最新の状態を確認できる |
参照
以上