0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GitHubでバージョン管理に失敗しないための初心者なりの運用ルール

Posted at

こんにちは。AIと一緒にちょっとした天気アプリを開発中の初心者です。

最近、GitHubでAPIキーをうっかりPushしてしまったこと、また、「ずっとmainにPushし続けて大丈夫かな?」と感じたことがきっかけで、初心者なりにバージョン管理のやり方を考え直しました。

この記事では、GitHubを使い始めたはいいものの、どうやってGitHubを使っていくかわからない自分のような人を対象に運用ルールやマインドを共有したいと思います。


① とりあえずの運用を見直す(pushのタイミング)

  • 理想:機能を1つ追加したら1コミット → まとまったらPush
  • 現実:とりあえず git add .git commit -m "更新"git push

最初は「1機能 = 1コミット」にこだわりすぎず、変更のたびにこまめにPushでもいい


② ブランチの考え方をざっくり理解する

ブランチ名 役割
main 本番コード(安定版) 本番環境に出すもの
feature/〇〇 新機能用のブランチ feature/add-weather-ui
fix/〇〇 バグ修正用のブランチ fix/api-key-leak

「mainを壊さないための隔離部屋」 がブランチの役目と一旦自分の中で考える


③ 最低限のブランチ運用ルール

  1. main は壊さない(=基本的に直接Pushしない)
  2. 作業用ブランチを切る(git checkout -b feature/ 〇
  3. こまめに commit & push
  4. 終わったら Pull Request で main にマージする

1人開発なら、ローカルでブランチ切って → GitHubでマージする流れで十分


④ 実践編:ブランチの使い方コマンド

# 新しいブランチを作って移動
git checkout -b feature/add-chat-ui

# ファイル変更後にコミット
git add .
git commit -m "✨〇〇追加"

# リモートブランチとしてPush
git push origin feature/add-chat-ui

その後はGitHub上でPull Requestを作って main にマージすればOK。


Tips:

  • ブランチ名はプレフィックスで整理feature/, fix/, test/など)
  • commitメッセージは短く・目的を1つに(例:add: フィルター機能追加
  • とにかく迷ったらPushしておくと安心

まとめ:まずはこの流れを習慣に


# 1. 新機能を作るならブランチを切る
git checkout -b feature/〇〇

# 2. 変更したらコミットしてPush
git add .
git commit -m "〇〇を追加"
git push origin feature/〇〇

# 3. GitHubでPull Requestを作成 → mainにマージ

おわりに

この記事は「GitとかGitHubとかよくわからん…けど使っていきたい!」という過去の自分に向けて書いています。

最初のうちはひたすらPushしていました。
ただ、このままだとGitHubの強みを活かせていないことに気づき、今回のような最低限のルールを決めておくことで、管理が多少楽になると考えました。

バージョン管理は最初むずかしく見えますが、壊さないためのブランチこまめなPush を意識するだけで、だいぶ楽になります。

同じような初心者の方の参考になれば嬉しいです…!

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?