1
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 3 years have passed since last update.

エンジニア歴5ヶ月の私がここまでよく使っているGitコマンド集

Last updated at Posted at 2019-12-16

はじめに

エンジニアに転職して5ヶ月ほど経ちました。
働き始めて思ったのが意外とGUIツールなどを使ってるエンジニアは多いなということなのですが、私は基本的にコマンドのみで作業してますので、これまでに多用しているGitコマンドについてまとめてみました。

プロジェクト開始

まずはここから。

$ git clone <クローンしたいリポジトリのURL>

git initする機会はこれまでほとんどありませんでしたので、基本的にここがスタート地点になってます。(まだ、2プロジェクト目くらいですが。。)

Pushまでの流れ

$ git add ファイルパス
$ git add .

変更があったファイルをステージングエリアに追加にするコマンドです。言い換えると、変更があったファイルをコミットできる状態にするコマンドということになります。

なのでいくらローカルでファイルを変更しようとgit addしていないとコミットはできません。

git add . はローカルで変更があったファイル全て(gitignoreしているものは除く)を一括でステージングエリアに追加することができます。

これはかなり便利なコマンドになりますが、稀に予期しないファイルを上げてしまう場合もあるので最初のうちは注意が必要かと思います。(僕は2回くらいやらかしました。)

$ git status
On branch develop
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

	modified:   docker/db/data/ib_buffer_pool

Changes not staged for commit:
  (use "git add/rm <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

	modified:   docker/db/data/ib_logfile0

流れ的に次はgit commitっぽいのですが、先ほどの予期しないファイルをコミットしないためにもこのコマンドでコミット前によく確認したりしています。

上がステージングエリア上がっているファイルで、下がファイルの変更はしているがまだgit addされていないファイルになります。

私は心配性のためこのコマンドも多用しています。

$ git commit -m "コミットコメント"

コミットの際のコミットコメントはプロジェクトによって決まりがあったりするので、それに従いましょう。

$ git push origin 現在のブランチ名

上記コマンドでコミットの内容をリモートへと反映させることができます。

$ git pull origin リモートブランチ名

複数人開発の場合、ブランチが日々更新されていくことになりますので、その変更を自分のローカルへと取り込んでいく必要があります。

コミット漏れに気付いたら

$ git commit --ammend --no-edit

現在ステージング状態のものを直前のコミットに含めることができます。

あ、ここ修正するの忘れてた、、みたいなときに便利。

$ git commit --amend -m "直前のコミットのコメントを修正"

おまけでこちらも便利。

git pullとほぼ同じ

$ git fetch
$ git merge origin/develop

最近はgit pullよりこちらを使っています。

ちなみにorigin/developと origin developの違いを最近ようやく理解しました。。

この記事が分かりやすかったです。

コミットログ

$ git log --oneline

gitのログが1行で表示されます。

ブランチ操作

$ git branch
* develop
  master
$ git branch -a
* develop
  master
  remotes/origin/HEAD -> origin/master
  remotes/origin/master

現在どのブランチにいるかを確認するために使用します。

-a オプションでリモートのブランチも見れます。

このコマンドはかなり多用してます。

$ git checkout ブランチ名

既存のローカルブランチを切り替えます。

$ git checkout -b 新しいブランチ名

ブランチを新しく作成してそちらに切り替えます。

git branch -D ブランチ名

ブランチを削除します。

$ git checkout -b develop origin develop

リモートのdevelopブランチを元に新しくローカルブランチを作成します。

なんかローカルでわけわからなくなったときに一旦ローカルを無かったことにして作り直したりしてました。笑

退避

$ git stash

コミットはせずに現在の作業を退避させるときに利用します。

かなり使います。

$ git stash -u

ちなみにこのオプションをつければ追跡してないファイルも含めて退避させることができます。便利!

$ git stash list

現在避難させているリストを確認できます。

$ git stash pop

その中から一番最近のものを復活させ、そのstashしているリストの中から削除します。

$ git stash apply

こちらは復活させてかつstashしているリストにも残したままにしておきます。

stashは結構たまるので私はpopの方をよく使います。

おまけ

VSCodeの場合はGit GraphやGitLensなどのおすすめプラグインがあるので、この辺入れておくと色々と助けになってくれるかと思います。

1
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
1
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?