0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Git 学んでみた

0
Posted at

Gitとは

Gitとは、プログラムのソースコードなどの「変更履歴を記録・管理するためのシステム」です。
いつ、誰が、どのファイルの、どこを書き換えたのかを自動で記録してくれるため、「バグが出る前の状態に戻す」「複数人で同時に同じファイルを編集する」といったことが安全に行えるようになります。

Gitで使うための4つの場所

ワークツリー

今実際にVSCodeなどで作業している場所です。
gitを使わずに普通に作業しているところはここです
例えるなら、荷物を段ボールに入れる前の散らかっている状態です

ステージング

次にローカルリポジトリへ保存(コミット)したいものを保存する「一旦保存エリア」です
ワークツリーで変更したファイルのすべての変更を反映したくなくて、「特定の〇〇ファイルだけ保存したいな」というときに、変更したいファイルだけをここに持ってきたりします。
例えるなら、送りたいものを段ボールにつめてガムテープをした状態

ローカルリポジトリ

自分自身のパソコン上にある、変更を保存しておく場所です
ステージングエリアに準備したファイルを、正式に変更として保存(コミット)する場所です
例えるなら、送りたいものを自分の家の倉庫に保管した状態

リモートリポジトリ

ネット上にある、全員の共有倉庫です
ローカルリポジトリで自分が行った作業を最終的にここにアップロード(プッシュ)させて1つのものにする
例えるなら、物置から荷物を運び出し、「配送センター(Amazonの倉庫など)に届けて、みんなが見られるようにした」状態です。

Gitの実際の操作

リモートリポジトリに届けるまでの基本ルート

git add

任意のファイルをステージングに持ってきてあげるコマンド
git add ファイル名

後述するcommitをする前に必ずやる必要がある

コミット

ステージングしたものをローカルリポジトリに持っていくためのもの

git commit -m 'なにかメッセージ'

先ほどのaddを含めて一度で実行するコードもある
git commit -am 'なにかメッセージ'

プッシュ

ローカルリポジトリからリモートリポジトリに反映させるためのもの

git push

mainの状態でpushはやらないほうが良く、後述するブランチを切った状態でpushするのがよいらしい

プル

リモートリポジトリからローカルリポジトリへ持ってくるためのもの

git pull

ブランチ

本番用のコードをぐちゃぐちゃにしないため、ブランチという枝に移って作業する
例えるとゲームのセーブデータのようなもの
基本的には新しい作業を行うたびにブランチを切ったほうがいい

git branch

新しくブランチをつくときはこのようにして作る
git branch ブランチ名

現在どこのブランチにいるか、またブランチにどんな物があるのかを調べるときは
git branch
のみで作ることができる

チェックアウト

別のブランチへの移動をチェックアウトという

git checkout ブランチ名

マージ

あるブランチの変更内容を別のブランチに反映させる手順(mainも含む)

マージの手順

  • マージ元のブランチをコミットしておく
  • マージ先のブランチへ移動(チェックアウト)
  • マージ先のブランチをコミットする
  • マージ先のブランチでマージを行う

git merge マージ元ブランチ名

マージするときのブランチは、移したい先のブランチであることに注意
また、プルをすると他の人が作ったブランチもつかえるようになるらしい

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?