エンジニ屋.com(エンジニヤドットコム)

分かりやすくを意識して情報発信!

【Gitコマンド集】使用頻度は少ないかも、だけど重要!【逆引き】

f:id:enginiya:20211231005458p:plain

メモに残していたGitコマンド関連を、年を越す1つの節目として、備忘録として簡単に列挙していきたいと思います。 参考となる有力なサイトなども掲載していきます。
説明不十分な箇所がありますが、ヒントを得る情報があれば幸いです。

Gitコマンド集(逆引き)

変更内容をチェック

git diff
--staged をつけるとステージングの差分をチェック
git status は変更ファイルをチェック

ワークツリーの変更を取り消す

git restore ファイル名
git restore -staged ファイル名でステージに上げた変更を戻す

サーバでリモートリポジトリの管理

例)enginiya-testを対象にする
sshで接続した後
/home/<ユーザ>/git/で
$mkdir enginiya-test.git
$cd enginiya-test
$git init --bare --shared

サーバーからリモートリポジトリにpush 

対象のディレクトリに移動
$git init
gitignoreを追加する場合
$touch .gitignore
$git remote add origin ssh://<ユーザ名>/~/git/enginiya-test.git
$ git add .
$ git commit -m “first commit”
$git push -u origin master (リモートリポジトリにブランチを追加)

リモート先を変更したい時

git remote set-url origin {{ new url }}

サーバーにリモートリポジトリをクローンする方法

cd ../../var/www(ドキュメントディレクトリ)
git clone ssh://<ユーザ名>/~/eniginiya-test.git

ブランチの一覧確認

git branch
git branch -a でリモートリポジトリも一緒に表示

ブランチを切り替え

git switch ブランチ名
git switch -c ブランチ名で作成して切り替え

ブランチをマージ

git merge ブランチ名
git merge リモート名/ブランチ名

リモートリポジトリからローカルリポジトリに反映

git fetch origin
ローカルリポジトリからワークツリー
git merge
まとめてリモートリポジトリからローカルリポジトリを通してワークツリー
git pull

設定値などの確認

git config -l

commit の確認

git log
commtiID の横にorigin/masterがなければcommit未

本番環境でFetchして差分を確認する方法

git fetch
git diff origin/master (コードの確認)
git diff --stat origin/master (ファイルの確認)
git pull
参考:【Git】git fetchしたデータはどこにある?fetchによるデータ取得と取得後のコミット履歴を確認する方法 - Qiita

開発途中のディレクトリを別ディレクトリの内容を上書き

使用したいディレクトリ上で
git remote set-url origin {new url} <例:ssh://< ユーザ名>/~/git/test.git >
git push してエラーが出た場合、
強制的にpushしても良いなら、git -f pushで解決

強制的にリモートブランチをローカルにpull

git reset --hard origin/master や origin/develop

スポンサーリンク

設定リモート先を削除

git remote rm

git管理されいてるファイルを管理対象外にしたい場合

gitignoreにファイル名を追記
git rm --cached <ファイル名>
参考:error: the following files have local modifications: - Qiita 参考:.gitignoreを後から追加してgit管理から除外する方法 | masablog

注意:ファイル作成元で行う必要がある。サーバ側かローカル側

git rm で間違った場合

git reset HEAD でやり戻す

gitignoreで管理下から除外していたファイルを管理下に再度置く方法

!ファイル名を記載
git add ファイル名 -f

強制的にマージを行いとき

git reset --hard origin/master

git ローカルの変更を元に戻す方法(ブランチのファイルを取ってくる)

git checkout <ファイル名>
git checkout . (全ファイルの場合)
参考:git ローカルの変更を元に戻す方法 - Qiita

以上です。

スポンサーリンク