初期設定
ユーザー名を設定
git config --global user.name "Githubのユーザー名"
メールアドレスを設定
git config --global user.email "メールアドレス"
エディタを登録
git config --global core.editor "エディタ名"
- vscodeの場合:
code --wait
- atomの場合:
atom --wait
コマンドラインの色の設定
git config --global color.ui auto
- git statusなどをした時の、Untracked file, staged fileなどの表示色がわかりやすくする
設定確認
設定を一覧で確認
git config --list
ローカルリポジトリ
ローカルリポジトリ作成
git init
ステージに追加
変更分全て追加
git add .
指定したファイルを追加
git add <ファイル名>
指定したフォルダを追加
git add <ディレクトリ名>
ステージに追加(git add)した変更を取り消す
ステージに追加した変更を取り消す
git reset HEAD <ファイル名>
git reset HEAD <ディレクトリ名>
ステージに追加した全ての変更を取り消す
git reset HEAD .
ローカルリポジトリに追加
メッセージ付きで追加
git commit -m "<コメント>"
変更内容を確認して追加
git commit -v
- コミットする前に変更内容を再度確認したいときに使用
リモートリポジトリ(GitHub)
リモートリポジトリを登録
originという名前でリモートリポジトリを登録する
git remote add origin <リモートリポジトリURL>
- 次回以降リモートリポジトリURLを入力しなくても良くなる
リモートリポジトリへ送信
指定したブランチでリモートリポジトリへ送信する
git push -u origin <ブランチ名>
-
-u
オプションは次回以降リモートにプッシュする際にgit push
で送信できるようなる。
リモートリポジトリから取得する
リモートリポジトリをクローンする
git clone <リモートリポジトリURL>
リモートリポジトリの内容をローカルリポジトリに取得する
git fetch <リモートリポジトリURL>
git fetch origin
- ※ローカルのディレクトリではなくローカルリポジトリに取り込む
込んだ内容をローカルのディレクトリに取り込む
git merge <リモートリポジトリURL>
git merge origin
fetchとmergeを一括で行う(git pull)
指定したリモートブランチをローカルブランチに取り込む
git pull origin <リモートブランチ名>
git pull origin master
pullの注意点
- 自分がdevelopブランチにいる場合に
git pull origin master
を実行してしまうと、developブランチにmasterブランチの内容が取り込まれてしまう - なのでファイルがぐちゃぐちゃになる可能性がある
- 基本的には
fetch
→maerge
を使用する方が安全 -
git pull
を使う際は挙動を理解して使用するのがベター
ファイル削除
リモートリポジトリファイルのみ削除
git rm --cached <ファイル名>
ローカルとリモートリポジトリファイルの削除
git rm <ファイル名>
ブランチ
ブランチを作成
任意のブランチを作成(切り替えは行わない)
git branch <ブランチ名>
任意のブランチを作成し切り替え
git checkout -b <ブランチ名>
ブランチを切り替え
指定したブランチに切り替え
git checkout <ブランチ名>
任意のブランチを作成し切り替え
git checkout -b <ブランチ名>
ブランチを変更
自分が作業しているブランチの名前を変更
git branch -m <新しいブランチ名>
ブランチを削除
ブランチを削除
git branch -d <ブランチ名>
- master以外のブランチがmasterにマージされていない場合は削除できない
強制削除
git branch -D <ブランチ名>
ブランチ一覧を表示
ローカルブランチのみ表示
git branch
リモート追跡ブランチを含む全てのブランチを表示
git branch -a
現在の状態確認
下記いずれかの条件を満たすファイルがあれば、一覧で表示するコマンド
-
git add
されているけどまだgit commit
されていないファイルの一覧 - 編集・変更・削除されているが、まだ
git add
されていないファイルの一覧 - Git管理されていない、かつ
.gitignore
で管理除外対象にもされていないものの一覧
git status
ログを確認
git log --oneline