Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
3
Help us understand the problem. What is going on with this article?
@masanarih0ri

【初心者向け】開発の時によく使うgitコマンド

More than 1 year has passed since last update.

Gitコマンドの忘備録

git add

作業ディレクトリ(皆さんのパソコン)で変更したファイルをステージング環境にあげる

全部ファイルを上げたいときは

$ git add .

とする

ファイルを指定して上げたいときは

$ git add hoge.html

のようにファイル名を指定する。

Railsのプロジェクトとかだとこんな感じ。

$ git add app/views/admin/index.html

git commit

ステージングに上がったファイルをgitリポジトリに保存する

$ git commit -m "commit_message" 

コミットメッセージはできるだけわかりやすく書いた方がいい。適当でもコミットはできるが、あとで見直した時に困る時があるので。

ちなみに、間違えてコミットメッセージを打ち間違えてしまった時には

$ git commit --amend -m "hogehoge"

とするとコミットメッセージを(上記の例の場合)"hogehoge"と変えることができる。

git push

コミットした内容をリモートサーバーへ送信する。

これで晴れて、リモートリポジトリ上に変更を反映できます。

$ git push origin branch_name

このようにしてpushをします。

$ git push origin master

とするとmasterブランチ(大元のブランチ)に変更内容を反映することになります。

個人開発ならばmasterにpushすることはあるかもしれませんが、通常チーム開発ではブランチを切ることがほとんどなので

$ git push origin branch_name

のように書くことがほとんどでしょう。

さて、上記の3つで「変更の内容をリモートリポジトリに反映する」ということはできるようになりました。

もう少しその周りで知識として必要になることがあるのでみていきましょう。

git checkout

これについてはいくつか使用用途があるので、
・新しいブランチを作る
・別のブランチから特定のファイルを取ってくる
・ブランチを切り替える
・ファイルの変更をなかったことにする

といったよく使う方法について書きたいと思います。

新しいブランチを作る

$ git checkout -b branch_name

として新しくブランチを切ります。これで、その新しく作ったブランチに移動してくれるので便利です。

ちょっとした応用例として

$ git checkout -b hogehoge origin/fugafuga

とすると、
・hogehogeというブランチを作成
・すでにリモート上に上がっているfugafugaというブランチ名の内容を全て取ってくる
・そしてその内容をhogehogeブランチに取り込む

ということができます。(すごい便利だ・・・)

誰かの開発を引き継いだりする時に使ったりします。

別のブランチから特定のファイルを取ってくる
自分が開発するブランチには今はないけど、他の人が開発しているブランチにある機能があって、それを取り込んだ上で開発したい、といったようなケースです。

そんな時は

$ git checkout target_branch_name file_name

のようにするとファイルを取ってこれます。

少しわかりにくいので具体的な例を出しますと

今いるブランチの中に、dev_hogeというブランチの中にあるapp/views/admin/index.htmlというファイルを取ってきたい、という状況である時には

$ git checkout dev_hoge app/views/admin/index.html

とします。
注意しなくてはいけないのは、「今いる」ブランチにそのファイルの内容が取り込まれるので、事前にどのブランチにいるかを確認した上でやりましょう。

ブランチを切り替える
文字通り今いるブランチから別のブランチに移動して作業をしたいケースの時に使います

$ git checkout target_branch

ファイルの変更をなかったことにする
別ブランチで変更するべきファイルを、間違えて今のブランチで変更してしまった!などといったミスもあったりするので、変更した内容を元に戻すこともできます。

$ git checkout .

これで、ローカルでの変更をなかったことにできます。
ただ、これだと全てのファイルに対して変更がなかったことにされてしまうので、ファイルを指定して行いたい場合は

git checkout app/views/admin/index.html

のようにファイル名を指定します。

git branch

今あるブランチを出してくれます

$ git branch

これでローカルの方のブランチを表示してくれます。

リモートリポジトリのブランチをみたい場合は

$ git branch -r

とします。
どっちもみたい場合は

$ git branch -a

とします。

git diff

変更した内容の差分を見ることができます。

$ git diff

が基本となります。

$ git diff HEAD

で最新コミットと作業ツリーの差分を表示することができます。

また、変更したファイル名の確認をする場合は

$ git diff --name-only

とすれば変更があったファイル名を確認することができます。

他にもよく使うものが出てきたら更新します。

3
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
masanarih0ri
商社の営業→新規事業開発とかweb制作のディレクションとかを経てエンジニアに。某ネット印刷の会社で主にフロントエンドの開発をしています。 CSS/Sass/Javascript/Vue.js/Nuxt.js/Typescript/Rails/Pythonなんかを触ったりしています。

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
3
Help us understand the problem. What is going on with this article?