その他
    ホーム 技術発信 DoRuby 知っておきたいgitコマンド
    知っておきたいgitコマンド
     

    知っておきたいgitコマンド

    この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。

     addやcommitなどのメジャーなgitコマンドは知っていたが、gitを使用した開発で初めてお世話になったコマンドがあったので、紹介したいと思います。

    作業中に別の作業に変更する

     優先度の高い仕事が手元から離れて優先度が低い作業に取り掛かっている時に、優先度の高い仕事が再度自分の手元に戻ってきた場合にstashコマンドが役に立ちます。
     stashコマンドとは、現在作業しているブランチの作業内容を一時的に保存することや保存されているstashを取得することができます。以下で自分がよく使用したコマンドの一部を紹介したいと思います。

    変更内容の保存
    git stash
    保存されている中で最新のstashを取り出す
    git stash pop
     指定したstashを取り出すには、popの後ろにstash@{0}と指定する。0の所は、stashの番号を入力する。
    保存されているstashの一覧表示
    git stash list
    保存されているstashのファイルを確認
    git stash show stash@{0}
    保存されているstashの全削除
    git stash drop
     一部のstashのみ削除する場合は、dropの後ろにstash@{0}と指定する。

    add,commitの取り消し

     自分がadd,commitの取り消しを初めて行う際に、変更内容まで消えてしまうのではないかと不安になった為、まとめました。

    addの取り消し
    git reset HEAD 「取り消すファイル名」
     こちらのコマンドは、変更内容はそのままでaddされた状態のみ取り消します。
    最新のcommitの取り消し
    git reset --soft HEAD^
     こちらのコマンドは、最新のコミットの取り消しを行います。変更内容はそのままです。今回は、オプションに--softを使用していますが、--hardを使用すると変更内容まで取り消してしますので注意が必要です。
    ファイルの変更内容の取り消し
     git statusコマンドを使用すると、作業しているブランチの変更ファイル一覧が表示されるのですが、その中には変更内容に必要ないファイルがあることがあります。このような場合は、git checkout 「変更内容を取り消すファイル名」コマンドを使用するとファイルが変更前の状態になります。

    gitのgrepコマンド

     grepコマンドは、ファイルの中の文字列を検索する場合によく使用します。先輩に言われるまでLinuxのgrepコマンドを使用していたのですが、gitにもgrepコマンドがあるということでgitのgrepを使用してみました。
    linuxのgrepコマンド grep -r 「検索する文字列」 「探すディレクトリ」
    gitのgrepコマンド git grep 「検索する文字列」
    こちらの2つのコマンドを調べた結果、gitのgrepには、メリット・デメリットがあります。

    • メリット gitのgrepはリポジトリ以外を検索しない為、linuxのgrepよりも速く見つけることができる。
    • デメリット gitのgrepはリポジトリの中しか検索対象にならない為、linuxのファイルを確認することができない。また、検索する場合は、リポジトリのディレクトリに移動する必要がある。

    まとめ

     今回は、自分が知らなかったgitコマンドについてまとめてみました。内容に関しては初心者向けの記事になりましたが、git初心者の方の参考になれば幸いです。

    記事を共有