コマンド | 解説 |
---|---|
$ git fetch origin main $ git reset --hard origin/main |
強制的にリモートブランチの最新状態にローカル環境を戻す。 参考 |
$ git pull |
プルを実行。チーム開発では毎日実行するコマンドになる。 pullはfetchとmergeを一度に両方行う。 ただし、競合が発生した場合はファイルを修正後、mergeを実行しなければならない。 参考 |
$ git clone プロジェクトURL | GitHubからインポート。 参考 |
$ git branch dog | ブランチを新しく作成(ローカル側のみ) |
$ git branch |
ローカルリポジトリのブランチ一覧を表示する。 アクティブなブランチには「*」がつく。 $ git branch gurukun * main tanuki |
$ git branch -v |
ブランチ一覧表示。
ハッシュ値とHEADコミットのメッセージも表示される。
$ git branch -v gurukun c3dce2a ファーストコミット * main abfa21e 海へ行きたい tanuki c3dce2a ファーストコミット |
$ git branch -r |
リモートリポジトリのブランチ一覧を表示する。
$ git branch -r origin/HEAD -> origin/main origin/main |
$ git branch -a -v |
ローカルリポジトリとリモートリポジトリの両方からブランチ名を取得する。
$ git branch -a -v gurukun c3dce2a ファーストコミット * main abfa21e 海へ行きたい tanuki c3dce2a ファーストコミット remotes/origin/HEAD -> origin/main remotes/origin/main abfa21e 海へ行きたい |
$ git branch -vv |
ローカルブランチとリモートブランチの紐づけを確認する。
[]内がリモートのブランチを表している。
$ git branch -vv main abfa21e [origin/main] 海へ行きたい * okinawa_fish c60f3e3 山へ行きたい tanuki c3dce2a ファーストコミット[]が存在しない個所はリモートのブランチと紐づいていない状態。 参考:ローカルブランチとリモートブランチを紐づける |
$ git checkout -b ローカルブランチ名 origin/リモートブランチ名 |
$ git checkout -b neko origin/nekoリモートブランチのチェックアウト。 プルリクエストによるチーム開発ではお世話になるコマンドになるだろう。 同じ名前のローカルブランチが存在しない状態で上記コマンドを実行する。 また、ローカルブランチ名とリモートブランチは同じブランチ名にする必要がある。 |
$ git checkout ブランチ名 |
アクティブなブランチを変更する。(ローカルリポジトリ内のブランチ)
プロジェクト内のファイル群もそのブランチの修正に一斉に切り替わる。
$ git checkout gurukun Switched to branch 'gurukun' $ git branch * gurukun main tanuki |
$ git branch -m 新しいブランチ名 |
ブランチ名を変更する。
$ git branch * gurukun main tanuki $ git branch -m okinawa_fish $ git branch main * okinawa_fish tanuki |
git branch -D ローカルブランチ名 |
ローカルのブランチを削除
git branch -D neko |
$ git ls-remote |
リモート側のブランチ情報を表示する(GitHub側など)
$ git ls-remote From git@github.com:amaraimusi/eccube4_demo.git abfa21e058bfb760db100a39a260480c56ceabf0 HEAD c3dce2a276cc756e0b94e20a08d0a6e0be2234c2 refs/heads/gurukun abfa21e058bfb760db100a39a260480c56ceabf0 refs/heads/main |
$ git remote -v |
リモート側のURL情報を表示
$ git remote -v origin git@github.com:amaraimusi/eccube4_demo.git (fetch) origin git@github.com:amaraimusi/eccube4_demo.git (push) |
$ git add -A |
インデックス領域(ステージングエリア領域)に差分ファイルを移動するコマンド。 「$ git add -A」コマンドの後でコミットコマンドを実行する必要がある。 参考:コマンドでコミット→プッシュ |
$ git status |
コミット予定の差分ファイルを確認 インデックス領域内のファイル一覧表示か? $ git status On branch main Your branch is up to date with 'origin/main'. Changes to be committed: (use "git reset HEAD <file>..." to unstage) modified: README.md |
$ git commit -m '任意メッセージ' |
コミットを実行する。
参考:コマンドでコミット→プッシュ$ git commit -m '海へ行きたい' [main abfa21e] 海へ行きたい 1 file changed, 2 insertions(+) |
$ git push リモート側のブランチ名(省略可) |
リポートリポジトリ側にプッシュ。
参考:コマンドでコミット→プッシュ$ git branch -a gurukun * main tanuki remotes/origin/HEAD -> origin/main remotes/origin/main $ git push origin main Enumerating objects: 5, done. Counting objects: 100% (5/5), done. Delta compression using up to 4 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 301 bytes | 150.00 KiB/s, done. Total 3 (delta 2), reused 0 (delta 0) |
$git push -f |
チーム開発では混乱を招くので絶対に使ってはいけない。
コミット履歴を強制的に上書きしてしまう。
あくまで個人で開発しているときのみに使用を限定すること。
$ git push -f origin main |
git remote add ブランチ リモートURL |
ブランチにリモートを紐づける。
git remote add master git@github.com:amaraimusi/note_prg.git |
git remote rm リモートのブランチ |
リモートのブランチを外す
git remote rm origin |
$ git log | コミット履歴を表示する |