LoginSignup
15
19

GitHubの新規リポジトリを作成して、developブランチによる開発準備

Last updated at Posted at 2023-03-25

Introduction

個人開発で GitHub を扱う際に行っている準備についてまとめました。
作業を定型化するための覚書です。

No. 作業内容リンク
1 ローカルリポジトリの設定
2 GitHub の設定
3 開発用ブランチの作成
4 おまけ
5 参考 URL

本記事が少しでも読者様の学びに繋がれば幸いです!
「いいね」をしていただけると今後の励みになるので、是非お願いします!

事前準備

GitHub アカウントの作成

環境

Ubuntu22.04

新規リポジトリのセットアップ

GitHub で管理できるように新規リポジトリを作成します。

ローカルリポジトリの設定

Terminal を起動し、作成したいアプリケーションのルートディレクトリに移動します。
ここでは仮に、develop/test/とします。
Terminal はCtrl+Alt+Tで起動して、cdコマンドで移動します。

cd develop/test/

git configコマンドで、デフォルトのブランチ名(ここでは main)を設定します。

git config --global init.defaultBranch main

git initコマンドでリポジトリを初期化します。

git init

git configをしないと警告が出ます。
メッセージは記載しますが、詳細は割愛します。

warning
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: 	git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: 	git branch -m <name>
Initialized empty Git repository in /home/hogehoge/develop/test/.git/

git addコマンドでディレクトリ配下の全ファイルをステージングに登録します。

git add .

git commit -mで変更内容(git addした内容)をコメント付きでローカルリポジトリにコミットします。

git commit -m "Initialize repository"

このような結果であれば正常に動作しています。

result
[main (root-commit) 44037f6] Initialize repository
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 test.txt

1 ファイルもない状態でコミットを行うと以下のメッセージが表示されます。
この場合は何かしらファイルを作成して、git addコマンドからやり直してください。

result
nothing to commit (create/copy files and use "git add" to track)

これでローカルリポジトリへのコミットが完了しました。
GitHub 側でリポジトリ作成後にコマンド入力が続きます。
Terminal は閉じずに残しておきましょう。

GitHub の設定

ローカルリポジトリでコミットした変更内容を、リモートリポジトリにも反映させましょう。
GitHub の画面右上の+▼をクリックするとプルダウンメニューが表示されます。
Screenshot from 2023-03-25 11-47-16.jpg
一番上のNew repositoryをクリックします。
Screenshot from 2023-03-25 12-09-11.jpg
新規リポジトリ作成画面でRepository nameを入力後、Create repositoryをクリックしましょう。
これで GitHub 側のリポジトリが作成されます。
Screenshot from 2023-03-25 12-33-31.png

ローカルリポジトリにリモートリポジトリ情報を追加します。

GitHub の画面からリモートリポジトリの URL をコピーします。
Screenshot from 2023-03-25 12-38-39.jpg
Terminal に戻り、git remoteコマンドでリモートリポジトリ情報を追加します。

git remote add origin [リモートリポジトリのURL]

git pushコマンドでローカルリポジトリの内容をリモートリポジトリに push します。

git push origin main

GitHub のページに戻ってリロードすると、push した内容が反映されていることが確認できます。

Screenshot from 2023-03-25 13-13-02.png
このまま GitHub を活用することもできますが、main のブランチで開発することは推奨されません。
個人開発でも履歴管理の観点から開発用にブランチを切って、開発や検証を行うことを推奨します。
では実際に、開発用のブランチを作成していきます。

開発用ブランチの作成

新規ブランチ作成に取りかかる前に、git branchコマンドで現在のブランチを確認します。

git branch -a

作成したmainブランチが表示されます。

result
* main
  remotes/origin/main

ここに開発用のdevelopブランチを追加するために、git checkoutコマンドを使用します。

git checkout -b develop

git branchコマンドでdevelopブランチの追加を確認します。

git branch -a

ローカルリポジトリにdevelopブランチが作成されチェックアウトされています。

result
* develop
  main
  remotes/origin/main

git pushコマンドでローカルリポジトリのdevelopブランチをリモートリポジトリに push します。
また、-uオプションによりローカルリポジトリとリモートリポジトリが紐付けられます。

git push -u origin develop

このような結果であれば正常に動作しています。

result
Total 0 (delta 0), reused 0 (delta 0), pack-reused 0
remote:
remote: Create a pull request for 'develop' on GitHub by visiting:
remote:      https://github.com/kagami-tsukimura/test/pull/new/develop
remote:
To https://github.com/kagami-tsukimura/test.git
 * [new branch]      develop -> develop
Branch 'develop' set up to track remote branch 'develop' from 'origin'.

GitHub のページに戻ってリロードすると、push 内容が反映されていることを確認できます。
Screenshot from 2023-03-25 14-22-50 (1).jpg
以上で私が行っている GitHub での開発準備完了です。
余談ですが、業務など共同開発を行う場合はdevelopブランチからfeatureブランチを切り出して開発することが多いと思います。
あくまで今回の手順は、個人開発で簡単なアプリケーション開発を行う準備となっております。

おまけ

これまでの手順でdevelopブランチで開発、mainブランチへの PullRequest 及び Merge ができるようになりました。
ただ、このままではmainブランチへ直接 push することも可能になってしまっています。
main ブランチが保護されていない旨のメッセージも表示されています。
Screenshot from 2023-03-25 14-27-54.jpg
念の為、勝手にmainブランチを書き換えられてしまわないように、
Protect this branchをクリックしてmainブランチを保護しておきましょう。
以下の設定にチェックを入れて、画面下部のSave changesをクリックして保護は完了です。

  • Require a pull request before merging
    • Require approvals
  • Require status checks to pass before merging
    Screenshot from 2023-03-25 14-29-12.png

developブランチから更にfeatureブランチを切り出して開発したい場合は、こちらの記事を参考にしてください。

最後に

閲覧頂きありがとうございました。
備忘録の側面もありますが、本記事がお役に立てば幸いです!

参考 URL

Git checkout|Atlassian Git Tutorial

15
19
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
15
19