LoginSignup
1
2

More than 3 years have passed since last update.

初学者の方は必見!エックスコードプロジェクトをGithubで管理する具体的な方法②

Posted at

概要

みなさん、こんにちは。

今回は、エックスコードプロジェクトをGithubで管理する具体的な方法②ということで、本記事は[初学者の方は必見!エックスコードプロジェクトをGithubで管理する具体的な方法①]の続きとなっております。

※今回、お伝えする内容は、エックスコード上や省略コマンドで簡単にできたりもしますが、あくまでも、わかりやすさを追求し、今回は何がなんでもGitHubでの管理をしたい人のための記事となっております。あらかじめ、ご了承ください。

この記事をみる前に、Gitをはじめからていねいにをみることをお勧めします!
https://github.com/takanabe/introduction-to-git

環境

・Xcode - 11.3.1

・git - 2.26.0

・CLI - ターミナル

ブランチをきって作業する

少し、前回の復習をしましょう。みなさんは、様々なコマンドを使ってエックスコードファイルをGithub上に公開することができました。
スクリーンショット 2020-11-06 0.20.31.png

ここまでは、大丈夫ですかね?

では、実際にブランチをきって作業していきましょう

このコマンドを入力してください

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git checkout -b hotfix main

このコマンドを実行することで、mainから分岐したhotfixブランチを作成することができます。

確認してきましょう!

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git branch
* hotfix
  main

ちゃんと、hotfixブランチができていますね。

エックスコードで作業をしよう

さて、ブランチを作成することができたので、実際にエックスコードで作業していきます。
ここでの作業は、何でもいいのでお好きな作業を行ってください。
スクリーンショット 2020-11-06 16.57.07.png

ちなみに私は、ViewContorollerに変数を追加しました。

コミットをしよう!

エックスコードプロジェクトで変更があったので、コミットをしていきます。
コマンドはわかりますよね?パート1の復習ですよ

まずは、コミットするためにファイルをセットします

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git add . 
ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git commit -m "犬と猫を追加"

私の作業では、犬と猫を追加したのでコミット名は上記のようにしときます。
みなさんはお好きな名前をつけてくださいね。

ターミナル
[hotfix 3b0b63c] 犬と猫を追加
 1 file changed, 2 insertions(+), 2 deletions(-)

このような感じで出力されたらコミット成功です!

確認していきましょう。

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git graph
* 3b0b63c  (HEAD -> hotfix) 2020-11-06 Yamada 犬と猫を追加
* 9e865bb  (origin/main, main) 2020-11-05 Yamada first commit

いい感じですね。

リモートリポジトリに反映させよう!

コミットができたら、マージする必要があります。
マージとは、分岐していたブランチを一つにするコマンドです。

しかし、その前に、hotfixブランチは、リモートリポジトリを作成されていませんよね。

リモートリポジトリはorigin/mainのことです。つまり、origin/hotfixを必要があります。

では、作成していきましょう!

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git push origin hotfix:hotfix

このコマンドを入力すると、英語がたくさん出てきますが、

ターミナル
* [new branch]      hotfix -> hotfix

こんな感じの表示がされたらOKです!

では、確認していきましょう。

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git graph
* 3b0b63c  (HEAD -> hotfix, origin/hotfix) 2020-11-06 Yamada 犬と猫を追加
* 9e865bb  (origin/main, main) 2020-11-05 Yamada first commit

ちゃんと、 origin/hotfixが作成されてますね。

マージをしよう!

ようやく、マージするところまで辿り着きました。少し疲れましたね。
後少しです。頑張りましょう。

まず、mainブランチに戻ります。

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git checkout main

確認をします。

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git branch
 hotfix
* main

しっかり切り替えができていますね。

では、マージしていきます!

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git merge --no-ff hotfix 

mergeにくっついている--no-ff コマンドはfast-forwardをさせないようにするためのコマンドです。

少しわかりにくいので、確認していきます。

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git graph
*   8beb13b  (HEAD -> main) 2020-11-06 Yamada Merge branch 'hotfix' into main
|\  
| * 3b0b63c  (origin/hotfix, hotfix) 2020-11-06 Yamada 犬と猫を追加
|/  
* 9e865bb  (origin/main) 2020-11-05 Yamada first commit

--no-ffコマンドをしようすると、margeした履歴も枝割れして残ります。

しかし、普通のmargeだと,下記のような枝別れしないグラフになると思います。

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git graph
* 3b0b63c  (main/origin/hotfix, hotfix) 2020-11-06 Yamada 犬と猫を追加
| 
|
|
* 9e865bb  (origin/main) 2020-11-05 Yamada first commit

これが、fast-forwardです。
枝分かれしない方がシンプルですが、margeした履歴が残らないのが欠点です。
どちらがいいかは会社の方針や個人の好みで決めます。

プッシュをしよう!

さぁ、いよいよ最後です。
pushをしていきましょう!!

ターミナル
○○○○○@xxxxxxxxxxMBP ~ % git push

たくさん英語が出てきたらOKです。

Github上で確認してみましょう!

スクリーンショット 2020-11-07 1.21.58.png

スクリーンショット 2020-11-06 20.01.06.png

しっかりコミットの内容が反映できていますね。

最後に

いかがだったでしょうか。今回は2記事にわたって、エックスコードプロジェクトをGithubで管理する方法をお伝えしてきましたが、みなさんはGithubに公開することができましたでしょうか?
もちろん、これが完璧ではありません。もっと簡単な方法や短縮コマンドも存在します。

しかし、今回はエックスコードプロジェクトをGithub上に公開し、管理するというところを目標にし。なるべく流れで理解しやすくすることを心がけました。

この記事を通して、多くの初学者の方がGithub上でコードを見ることができる喜びを味わっていただければ幸いです。

それでは!

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