🐙

Gitについて

2025/02/18に公開

本記事を書くキッカケ

  • 今期からチーム長になり、チーム会で勉強会をすることを決めました。
  • どの現場に行っても使える基礎的な技術について学ぶ・復習していきます。

ゴール

  • Gitの基本的なコマンドについて使えるように!
  • GitHubの基本的な機能について使えるように!
  • この記事を見て思い出せるように!

Gitとは?


https://git-scm.com/
業務でファイルを作成したり、修正したり、削除したりすることはこの業界にいると経験する(している)と思います。その様々なファイルの変更履歴を開発者のPC(ローカル)で管理することができる無料のオープンソースの分散型バージョン管理システム[1]です。

バージョン管理って?

誰がいつ対象のファイルを変更したか、ファイルの変更内容の差分(変更前後の違い)を確認することです。また、バージョン管理を行うことで過去のある時点へと戻すことも容易に行うことができます。

GitHubとは?


https://github.com/
Gitを使用してファイルをWeb上で管理したり、他の人へ共有することができるWebサービスです。
インターネット上でリポジトリ[2]を公開することで、gitでバージョン管理されたファイルを誰でも見ることが可能になります。
Gitは基本的にローカル上でファイルのバージョン管理ができるシステムなのに対し、GitHubはインターネット上のサーバーでリポジトリを管理しているので、インターネットがあればどこからでもアクセスすることが可能です。
GitHubは、チームメンバーと一緒に開発するのにとても便利です!

Let's practice!

ここからは普段使用しているであろうVisual Studio Codeで実践していきます!

1.リポジトリの作成する

コマンド
git init

2.リポジトリのクローンする

コマンド
git clone [URL]

3.リモートブランチの最新を取得する

コマンド
git fetch

4.ファイルを追加する(indexへ)

コマンド
git add .

5.コミットする

コマンド
git commit -m "メッセージ"

6.プッシュする

コマンド
git push origin {ブランチ名}

7.直前のコミット消したい!

コマンド
git reset HEAD~1

8.間違ったコミットを消したい!(履歴あり)

コマンド
git revert {コミットID}

9.ブランチ一覧確認する

コマンド
git branch 

10.ブランチを作成する

コマンド
git branch {ブランチ名}

11.ブランチの切り替えを行う

コマンド
git checkout {ブランチ名} 

12.ブランチ作成しチェックアウトする

コマンド
git checkout -b {ブランチ名}

13.aブランチにbブランチをマージする

コマンド
git checkout a
git merge b

14.ローカルブランチを削除する

コマンド
git branch -d {ブランチ名}

15.リモートブランチを削除する

コマンド
git branch --delete {ブランチ名}

16.bブランチをaブランチでリベースする

コマンド
git checkout b
git rebase a
Before:
      A---B---C (a)
     /
    O
     \
      D---E (b)

After `git checkout b && git rebase a`:
      A---B---C (a)
              \
               D'---E' (b)  # a の最新コミットを基点に b を適用

After `git checkout a && git merge b` (Fast-forward):
      A---B---C---D'---E' (a, b)

脚注
  1. 分散型とは中央サーバー(全てのファイルの変更履歴を管理するサーバー)がなくても変更履歴を開発者のPC(ローカル)で管理することができます。分散型と対照的に集中型(TortoiseSVN等)があります。 ↩︎

  2. リポジトリとはファイルやバージョンを管理する場所のことです。 ↩︎

Discussion