0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Gitの基本コマンド集

Last updated at Posted at 2022-10-29

はじめに

こんにちは,来海くるみ(@walnut-pro)です.
仕事でソースコード管理に使うGitのコマンドをまとめました.

ブランチの確認 - git branch

全てのブランチを確認するときには,こちら

git branch

#   develop
#   feature/modify-component
# * master

現在のブランチだけを確認したいときには,こちら

git rev-parse --abbrev-ref HEAD

ブランチが多くて最後まで表示されないときには,Enterかqキーを押す
Enterを押すと,「:」より次の行が表示され,qキーを押すとブランチの表示が終了する

git branch

#  develop
#  feature/modify-component
#  feature/modify-A
#  feature/modify-B
#  feature/modify-C
#  feature/modify-D
#  feature/modify-E
#  feature/modify-F
#  feature/modify-G
#  feature/modify-H
#  :

ブランチの作成&移動 - git checkout

ブランチを移動するときには,こちら

git checkout feature/modify-component

新規ブランチを作成&移動するときには,こちら

git checkout -b feature/modify-J

ブランチを作成するだけのときには,こちら

git branch feature/modify-J

ブランチを最新の状態にする - git pull

既にリモートリポジトリに存在するブランチをもとに,ローカルのブランチを最新の状態にするときには,こちら

git pull origin feature/modify-J

リポジトリに上げる - git add/commit/push

ブランチ(feature/modify-J)に移動した後に,作業内容をリポジトリに上げるには,こちら
originがGithub側のリモートリポジトリのブランチを指している

git add .
git commit -m "Jコンポーネントの修正"
git push origin feature/modify-J

addとcommitを一緒にやってしまいたいときには,こちら

git commit -am "Jコンポーネントの修正"

コンフリクトが起きたときの対応

リモートリポジトリのブランチの最新の状態と競合している箇所があるため,まずはpullをする

git pull origin feature/modify-J

続いてステータスの確認

git status
On branch feature/modify-J
You have unmerged paths.
  (fix conflicts and run "git commit")
  (use "git merge --abort" to abort the merge)

Unmerged paths:
  (use "git add <file>..." to mark resolution)
    both modified:   test_conflict.js

no changes added to commit (use "git add" and/or "git commit -a")

コンフリクトを起こしているファイルの中身(test_conflict.js)を見る
HEAD から feature/modify-Jの間が実際にコンフリクトしている部分となる

<<<<<<< HEAD
// 今チェックアウトしているブランチ(feature/modify-J)での変更内容
・・・
=======
// 元のブランチでの変更内容
・・・
>>>>>>> feature/modify-J

コンフリクトしているソースコードを修正する

<<<<<<< HEADから=======の間か,=======から>>>>>>> feature/modify-Jの間のどちらかを残す

上記の手順でコンフリクトが解消できない場合

リモートリポジトリのブランチの最新の状態に合わせてリセットする(ローカルでの変更分が消えてしまうので,注意)

git reset --hard origin/feature/modify-J

変更を残したまま,別のブランチに移動する - git stash

変更を残したまま,作業ブランチを移動したいとき,そのまま移動するとこのようなエラーが出る

# Please move or remove them before you can switch branches.
# Aborting

変更内容を一時退避させたい場合には,こちら

git stash save "modify-Jの変更"
git checkout feature/modify-A

stashできたか確認するときには,こちら

git stash list

# stash@{0}: On feature/modify-J: "modify-Jの変更"

作業ブランチに戻ってstashを復元したいときには,こちら

git stash pop stash@{0}

stashを削除したいときには,こちら

git stash drop stash@{0}

stashせずに変更内容を消去して,ブランチの移動を行いたいときには,こちら

git checkout .
git checkout feature/modify-A

リモートリポジトリの特定のコミットまで状態を戻す -git revert

既存のコミットを取り消したいときには,こちら
<commit>の部分にコミットidを指定します.

git revert <commit>

revertコマンドを使うとcommitまで行われるが,コミットしたくない場合には,こちら

git revert <commit> --no-commit

gitのブランチを操作する - git merge/rebase

こちらに詳しく図解されています.

終わりに

他にも記事を書いていますので,よかったらご覧ください!

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?