SourceTreeで始めるGit実践編
彡ハヽヽミ ( ´・ω・`) / ヽ / / ヽ| (_二つ ) | イ | l⌒ヽ ヽ
こんな体が…
彡 ⌒ ミ ( ´・ω・`) ./ >- 、-ヽ /丶ノ、_。.ノ ._。) 〈 、〈Y ,ーiー〈ト .\_ξ ~~~~~~Y |__/__| |、,ノ | 、_ノ
ムキムキになれます!
彡ハヽヽミ ( ´・ω・`) / ヽ / / ヽ| (_二つ ) | イ | l⌒ヽ ヽ
Git未使用
彡 ⌒ ミ ( ´・ω・`) ./ >- 、-ヽ /丶ノ、_。.ノ ._。) 〈 、〈Y ,ーiー〈ト .\_ξ ~~~~~~Y |__/__| |、,ノ | 、_ノ
Git使用後
アジェンダ• Gitのあるなしについて
• Gitの用語など
• ディレクトリ構成について
• 導入にあたって
• WordPressでの注意点
• 役割別に見るGit
作業の流れ
• 編集
• アップロード
• 確認
• バックアップ
二人以上の作業A「今から編集するよー」
「了解。どのファイルいじります?」B
A「hoge.phpいじりますー。」
A「編集&アップしました。」
「了解。DLしときます」B
二人以上の作業A「今から編集するよー」
「了解。どのファイルいじります?」B
A「hoge.phpいじりますー。」
A「編集&アップしました。」
「了解。DLしときます」B
この間編集不可!
VCS未導入のデメリット• 同時編集ができない
• 最新版の同期が必要
• 過去のバージョンに戻れない
Gitの用語• リポジトリ
• クローン
• コミット
• プッシュ
• プル
• 衝突
リポジトリ• ソースコードとかのファイルが入った入れ物
• 一つのプロジェクトに一つのリポジトリ
• 例) あの案件のリポジトリ、どこにあったっけ?
• 例) 手元のリポジトリにはファイル追加してあるなぁ。
クローン
• 親元のリポジトリから手元にコピーすること。
• 例) この案件のリポジトリ作っておいたから、クローンしといて
コミット
• 作業を手元で保存すること。
• コミットの単位で履歴に残る。
• 例) 今日の作業分をコミットしとこう。
プッシュ• 手元でコミットされた内容をサーバにアップロードすること。
• 例) その変更点、プッシュしておいてね。
• 例) あっ、コミットはしたんですけど、まだ完成してないのでプッシュしてないです。
プル
• サーバから変更点をダウンロードすること。
• 例) こないだのバグ修正、プッシュしといたから、プルしておいてね。
衝突• 同じファイルの同じ箇所を同時に修正した場合
• 例) このページのテーブル、僕の方でも修正したので衝突したみたい。
Git用語だけど知らなくていいこと• ブランチ、タグ
• チェックアウト
• マージ
• ヘッド
実際のディレクトリ構成• WordPressのテーマディレクトリ
• プラグインディレクトリ
• デザインファイル
• その他エクセルファイルなど
• バックアップ
テーマディレクトリ
• themes以下で必要なディレクトリをまるごと
• 親テーマを使っている場合にはそちらも
• 名前はwptheme
プラグインディレクトリ
• 案件に向けて作成したディレクトリ
• インストールしたファイルは入れない
• 名前はwpplugins
デザイン系
• aiやpsdのデータ
• スライス、書き出ししたpng, jpg
• 名前はimgs
その他ファイル
• エクセル、ワードのデータ
• お客さんから送られてきたいろいろなファイル
• 参考資料となるpdfなど
• 名前はattachments
バックアップ• データベースのダンプファイル
• WordPressのエクスポート
その他• gitでクローンするディレクトリは一箇所
• 必要な箇所にシンボリックリンクなどで対処
• 必要な箇所 => XAMPPなど
• シンボリックリンク => エイリアス、ショートカット)
Gitの準備• BitBucketのアカウントを取る
• https://bitbucket.org/
• SouceTreeをインストールする
Gitで案件スタート1. 案件名を決める
2. リポジトリを作る
3. SourceTreeでクローンする
4. 作業する
5. コミット&プッシュ
6. プル
案件名を決める• 案件名は結構重要
• ユニークで複雑ではないもの
時間があれば実際に (15分ほど)
初回の導入にあたって• 現状のファイルバックアップ+Gitの二段構え
• 二度手間になって時間がかかるけれど…
• 得られるものは多い!
• まずは少人数でコミットー>プッシュ
WordPressでの注意点• 固定ページの投稿に書かない
• 複数人開発だと同期を取りづらい
• page-name.phpとしてテンプレートファイルでやりとりすると楽
• ただし納品後お客さんにいじってもらうのであれば投稿で作成もアリ
WordPressでの注意点• 手書きでの相対パス、絶対パスは避ける
• ../hogehoge.html, /css/hoge.css
• <?php bloginfo(‘template_url’); ?>を使いましょう
WordPressでの注意点• プリフィックスは設定しておくこと
• ユニークではないと他の案件と衝突する
• プリフィックスの変更は面倒
というわけで、 まずは気軽に始めてみませんか?
コーダーさん• CSS、テンプレートファイルの管理
• コーダーが複数いる場合に特に力を発揮
デザイナーさん• aiやpsdのデータをアップ
プログラマーさん• テンプレートファイルなどを管理
• 他の職種がGitを使えるようにサポート(ここ重要)
ディレクターさん• 全体管理
• 作業の割り振り
• 衝突発生時の折衝
• バックアップ
ひとりで• もちろんなんでも
• 見積書
• 請求書
• サーバの設定ファイル