MENU

初めてのGitHubステージング環境へのアップロード(FTPからGitHubへ)

目次

はじめに

これまでLP(ランディングページ)更新といえば、
FTPソフトでサーバーに直接ファイルをアップするのが一般的でした。
しかし今回のクライアントはGitHub運用。
GitHubでプルリク(Pull Request)→ステージング環境にマージすることで、
テスト環境に自動デプロイされる仕組みでした。

この記事では、Mac環境・初心者が実際に作業して覚えた流れを、
実際のターミナルコマンド付きで解説します。

1. Git運用の基本イメージ

用語意味FTPとの対比
ローカル自分のMacにある作業フォルダFTPの「アップ前のファイル」
リモート(origin)GitHub上のリポジトリFTPの「サーバー」
ブランチ作業の枝分かれ。masterやstaging、featureなどFTPには概念なし
commit変更内容をローカルに記録FTPの「アップ直前の確定」
push変更をGitHubへ送信FTPの「アップロード」
Pull Request(PR)GitHub上で「stagingに取り込んで良い?」と申請するFTPの「アップ後チェック依頼」
mergePRを承認してstagingへ反映FTPでアップ完了

ポイントは「直接サーバーにアップせず、GitHubを経由する」こと。
これにより履歴管理・差分確認・ロールバックが簡単になります。

2. 実際の作業フロー

① リポジトリをクローン

まずクライアントのGitHubからプロジェクトをMacに複製します。

cd ~/Desktop   # 作業したい場所へ移動
git clone https://github.com/クライアント名/リポジトリ名.git
cd リポジトリ名

② 作業ブランチを作成

本番(master)やステージング(staging)を直接触らず、
featureブランチを作ってそこで作業します。

git fetch --all
git checkout -b feature/lp-sample master

③ ファイル配置

クライアントの指示に従い、
wp-content/themes/your-theme/lp/ 配下にフォルダを作成し、
LPファイル(index.php など)をコピー。

mkdir -p wp-content/themes/your-theme/lp/
cp /Users/自分の作業元/lp-sample/* \
   wp-content/themes/your-theme/lp/

④ 変更をコミット

変更内容をローカルに記録します。

git add wp-content/themes/your-theme/lp/
git commit -m "feat(lp): add lp-sample LP"

⑤ GitHubにプッシュ

GitHub上の同名ブランチへアップロード。

git push origin feature/lp-sample

⑥ Pull Requestを作成

GitHubのリポジトリ画面に
「Compare & pull request」ボタンが出るのでクリック。

  • base : staging
  • compare : feature/lp-sample

タイトルや概要を書いてPRを作成します。

⑦ マージ

クライアント承認(または自分で)後、
「Merge pull request」→「Confirm merge」でマージ。
これでステージング環境に自動デプロイされます。

例:

https://stg.example.com/lp/sample

3. ありがちなハマりポイント

.DS_Storeが混入

Macは不可視ファイル .DS_Store を自動生成します。
.gitignore に以下を追加 .DS_Store 既にコミット済みなら git rm --cached path/to/.DS_Store git commit -m "chore: remove .DS_Store and update .gitignore" git push origin feature/branch

キャッシュ

ステージング表示が変わらない時は
シークレットモード or ?cb=ランダム数字 を付けて確認。

4. FTPとの違い

項目FTPGitHub運用
アップロード手動commit → push
履歴管理なしすべて履歴に残る
差分確認できないPRで一目瞭然
誰が何をしたか不明コミットログで全員分かる

「サーバーに直接触らない安心感」 が最大のメリットです。
一方、コマンド操作やPR作成など手順は増えますが、
一度慣れれば安全かつ確実にデプロイできます。

5. まとめ

今回の作業を通じて学んだポイント

  • featureブランチ→PR→stagingマージ が基本動線
  • コマンドはコピペでOK。理解は少しずつで大丈夫
  • FTP感覚の「上書きアップ」は、
    Gitでは「add → commit → push → PR → merge」に置き換わる

Gitは最初は敷居が高く見えますが、
「アップの手順を安全にするための道具」と捉えると理解が早まります。

よかったらシェアしてね!
  • URLをコピーしました!
目次