Torihaji's Growth Diary

Little by little, no hurry.

初心者である自分が使うgit initからリモートへ、リモートからローカルまでの流れ

はじめに

みなさん、こんにちは torihaziです。

現在 gitを学んでいるのですがタイトルにあるような操作を実施するので

その流れをそのコマンドの意味を明記しながら書き残していこうと思います!!

では れっつ go----

操作およびコマンド

1 作業フォルダを作成し、そのフォルダに移動

# mkdir work
# cd work

何も変わったことはしていません。 ファイルを作成し、cd で移動しただけです。

2. ローカルリポジトリを作成する

# git init

git initをすることで、ローカルリポジトリを作成します。

3 ブランチを切る

# git branch
# git checkout -b branch

ブランチとは開発を進める上で履歴を分岐させて開発できるようになる機能のこと。(?)

あるいはその分岐させた履歴のこと。

業界ではブランチを切ると表現する

4. なんらかのファイルを編集する

code index.htmlでも使用してファイルの編集作業をします。

5. ステージングする

# git add . もしくは git add 編集したファイル名

git add .で編集したすべてのファイルを、ファイル名を指定すればそのファイルのみを

ステージングすることができます。

ステージングとはワークツリーからステージへと移動させること。

ワークツリーは自分が作業している階層のこと。

ステージとはローカルリポジトリへのコミット準備ができたファイルが置かれる階層のこと。

6 コミットする

# git commit

ステージングされているファイルをローカルリポジトリへコミットします。

コミットとはその変更を確定させてローカルリポジトリへ変更履歴を記録する行為のこと。

実行するとgit config --global core.editor <エディタ名>で指定したエディタが起動する

そこでコミットメッセージを記録して閉じるとコミットが完了する

コミットメッセージとは未来の自分含めて他の作業者が見て何を変更したのかが分かるように書いたコメントのこと。

7 リモートリポジトリへ

# git push origin branch

はじめに作成したブランチ名でリモートリポジトリへプッシュする

リモートリポジトリはgit remote add origin githubのURLで指定したものになる。

プッシュすると、Githubというオンライン上でコードの履歴管理をしているサービスにアップロードできる

Githubにアップロードするとチーム内の他メンバーからも参照することが可能になる

また mainブランチ以外のブランチで プッシュすると

Pull Requestをしてコードレビューを受けたりすることができる。

開発してきた目的は 切ったブランチで作成したコードを 大元のmainブランチへ反映させること

レビューが通るとmainへマージすることができる。

また作成したブランチもリモート側で削除する。

8 ローカルリポジトリへ変更を反映する

# git checkout main
# git pull origin main --rebase
# git fetch --prune
# git branch -d branch

ローカルにあるmainブランチは 履歴自体が ファイル編集前の履歴が最新であるので

リモートリポジトリの履歴をローカルに持ってくることによってmainの履歴を最新にする。

こうすることによって変なローカルとリモートの差分をなくし、コンフリクト等を防ぐことができる。

コンフリクトとは。(?)うまく言葉にできないので明日やろう。

--rebaseの意味は?

git fetch --pruneを実行することによって リモートリポジトリにないブランチを削除することができる

今回の場合であると'origin/branch`を削除することができる。

また作成したbranchを削除するために git branch -d brachを実行する。

終わりに

一通りやっている作業を言語化してみました。

コンフリクトとは、ブランチとは、--rebaseとは、--pruneの意味は?

書いてみると理解がふわついていることが一目瞭然ですね。

Qiitaに書くとボコボコにされそうなのでブログに書いてます。

上手く説明してくれる方大募集中です。

よろしくお願いします!!