LoginSignup
1
0

More than 3 years have passed since last update.

Gitの基本的なコマンドのまとめ

Last updated at Posted at 2020-10-19

いつかGitを使って開発行うこともあるかもしれないと思い、
とりあえず基本的な部分をメモとして残すことに。

Gitとは?

分散型バージョン管理システムのこと。
ちなみにGitHubは、Gitを使ったソフトウェア開発PJのための共有ウェブサービスのこと。

GitとSubversionの違い

  • Git
    • 同じ情報を持つリポジトリを、開発者ごとに持つことができる(分散型)
      • ローカルで
      • 間違ってコミットしてしまったソース等が、いきなりメンバーに共有されて影響を与える心配がない。
      • SVNと比べて操作がやや難しい部分がある。
  • SVN
    • 開発者全員が共有するリポジトリに対して修正内容を反映(集中型)
      • 操作が簡単なので、初心者でも扱いやすい。
      • 他の人との競合や、間違って不完全なソースコードを共有してしまう危険がある。

Gitでよく使う用語

用語 内容
リポジトリ
(repository)
ソースコードや修正履歴、コメント等を保存している場所。
リモートリポジトリ
(remote repository)
サーバに保存されていて、複数人で共有するためのリポジトリ。
ローカルリポジトリ
(local repository)
ローカルに保存されているリポジトリ。
クローン
(clone)
リモートリポジトリのファイルや変更履歴を丸ごと複製(ダウンロード)すること。
ブランチ
(branch)
一連の修正を、いくつかに分岐させて管理するもの。
ブランチでの修正内容は他のブランチの影響を受けないため、同じリポジトリで同時に複数の変更を行うことができる。
チェックアウト
(checkout)
他のブランチへ移動し、作業ディレクトリを任意のコミット状態にすること。
コミット
(commit)
修正内容をローカルリポジトリに反映すること。
プッシュ
(push)
ローカルリポジトリの修正内容をリモートリポジトリに反映すること。
プル
(pull)
リモートリポジトリの修正内容をローカルリポジトリに反映すること。
※ローカルリポジトリとの差分のみをダウンロードして更新する。
マージ
(merge)
異なるブランチの修正内容を反映すること。
マージ先とマージ元の両方に変更履歴が残る。
コンフリクト
(conflict)
マージの際に、リモートとローカルで同じファイルの同じ箇所に対して修正がされており、自動でマージできないこと。
両方の修正を合わせた内容に手動で編集する必要がある。

Gitを使う準備

新しいリポジトリを作成するコマンド

test $ git init

共有するファイルの選択

共有したいファイルを作成する(ex:index.html)

test $ git add index.html(共有したいファイル名)

変更したファイルを把握する

下記コマンドによって、自分がどのファイルを変更したか確認できる。

test $ git status
On branch masterChanges not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        modified:   index.html
        modified:   stylesheet.css

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

変更した内容を把握する

コードを変更した部分は、
変更前のコード:赤色で表示される。
変更後のコード:緑色で表示される。

内容に問題がなければ、git addを実行する

addしたファイルを確認する

どのファイルをaddして、どのファイルをaddしていないかを確認ができるのは、
先ほども使用したコマンド「git status」を実行することで確認できる。

addされたファイル   :緑色の文字で表示される。
addされていないファイル:赤色の文字で表示される。

ファイルの記録

いわゆる コミット のこと

test $ git commit -m "Create index.html"

コミットメッセージは分かりやすく書く

コミットする際に、メッセージを適当にするとどんな修正を行ったのか分かりずらくなる。
なるべく具体的に、簡潔に書くように気を付ける。

共有の仕組み

Gitでは「リモート」という共有ファイルの置き場を使用する。
リモートファイルにアップロードしたり、
リモートからファイルをダウンロードすることで、
開発者同士がファイルを共有することができる。

リモートの準備

リモートにアップロードするためには、そのリモートのURLを登録する必要がある。
リモートを登録する際には名前を付ける必要があり、基本的に「origin」とすることが多いらしい。

test $ git remote add リモート名 リモートのURL

リモートの名前を変更する

リモートの名前を変更したい場合は下記コマンドを実行すると、変更できる。

git remote rename 古いリモート名 新しいリモート名

リモートにファイルをアップロードする

アップロードすることを、プッシュという。

test $ git push origin master

origin の部分は、git remote addを実行する際に使用したリモート名

リモートのファイルをダウンロードする

ダウンロードすることを、プルという。

test $ git pull origin master

コミットログの確認

コミットメッセージのみ確認するコマンド

git log

変更内容も確認するコマンド

git log -p

表示内容が多い時は特殊な表示モードになる。
上下キーを使うと表示範囲を変えることができて、Qキーを押すと終了する。

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