GitHub/開発手順
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#topicpath
----
#contents
まだまだ試行錯誤中です。
Gitを使ってちゃんとした(?)開発の手順を整理中です。
イメージとしては master は本番稼働として管理して、そこか...
よくよく調べたら、この開発フローはGit-Flowという開発フロ...
** master/develop/featureブランチのイメージ [#y540b013]
全体像を示すと以下の感じ。本来のGit-Flowは masterへのマー...
#ref(model.png)
** 事前準備 [#p44aa929]
GitHub上では masterとdevelopというブランチが作成済みとい...
** 開発者がローカルの環境で初回やること [#f3ad2b35]
開発者が開発を始めようと思ったとき((ようするに個別のチケ...
手順は [[GitHub/リモートのブランチをcloneする]] をご確認...
ここまでで developというローカルのブランチが作成・チェッ...
$ git branch -vv
develop aa3dca8 [origin/develop]
master aa3dca8 [origin/master]
各開発環境で初回やるのはここまでで、チケットを対応する際...
** チケットごとのブランチで開発 [#r556248c]
***チケットごとのブランチの作成 [#de37d929]
$ git checkout -b feature/dev_50 develop ←50は、チ...
Switched to a new branch 'feature/dev_50'
$ git branch -vv
develop aa3dca8 [origin/develop]
* feature/dev_50 aa3dca8
master aa3dca8 [origin/master]
developから派生したチケット番号#50用のブランチが作成でき...
ちなみに、-vvをつけることで、いま作成したブランチ feature...
***細かなコミットとかを進めていく使い捨てブランチを作成 [...
$ git checkout -b feature/dev_50_spike develop
$ git branch
develop
feature/dev_50
* feature/dev_50_spike
master
ここまでを図で示すとこんな感じ。
#ref(01.png)
開発はここで進めていきます。全体に反映されたくないような...
なので、コミットを進めていくと下記の図のような感じになり...
#ref(02.png)
***チケットごとのブランチ feature/dev_50 へコミットをまと...
最終的に対応が完了したら、feature/dev_50 にコミットをマー...
[[GitHubでコミットをまとめる>GitHub/コミットをまとめる]] ...
$ git checkout feature/dev_50 ←dev_50へ移動して
$ git merge --squash feature/dev_50_spike spikeの内容を...
feature/dev_50_spikeで作業していた内容が、まるっと featur...
#ref(03.png)
***チケットごとのブランチ feature/dev_50 のコミット [#gc3...
あとはこれらをコミットするときにちゃんとコメントを書いて...
$ git commit -a
これで上記の図の右の状態になりました。
*** developの更新分のリベース [#jb31c024]
さて、チケットの対応が完了したのですが、feature/dev_50を...
に整理しましたが、ようするに下記の通りです。
git checkout develop developへ移動
git pull origin develop ローカルのdevelopを更新
git checkout feature/dev_50 dev_50へ移動
git rebase develop 派生元のdevelopの内容でリ...
... コンフリクトした場合はココでゴニョゴニョするのですが...
こうやって、feature/dev_50 のしらないところで更新されたde...
** サーバへ feature/dev_50 の内容をプッシュ [#z7ea2e6f]
そしてリモートの feature/dev_50 へpushします。
$ git push origin feature/dev_50
Total 0 (delta 0), reused 0 (delta 0)
To https://github.com/xxxxxx/helloworld.git
* [new branch] feature/dev_50 -> feature/dev_50
#ref(04.png)
** サーバの feature/dev_50 から、developに対してのプルリ...
最後に、GitHubサーバの feature/dev_50 から developに対し...
以上で、 ローカルの feature/dev_50 で開発していた内容が、...
チケット担当者の作業は以上で完了です。
**参考 [#i150b780]
-[[7. merge --squash【チュートリアル3 コミットを書き換え...
-[[GitHubへpull requestする際のベストプラクティス - hnwの...
----
この記事は
#vote(おもしろかった,そうでもない)
- リモートへ送信したフィーチャーブランチは、マージしても...
- spike状態のモノも、他との共有を目的にPushしてもよいかも...
- developブランチにマージされたあとのリリース作業について...
- mavenを使うプロジェクトの場合、gitflow-maven-plugin を...
- 具体的にはdevelopまでマージしたあと(プルリクベースで)、...
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
終了行:
#topicpath
----
#contents
まだまだ試行錯誤中です。
Gitを使ってちゃんとした(?)開発の手順を整理中です。
イメージとしては master は本番稼働として管理して、そこか...
よくよく調べたら、この開発フローはGit-Flowという開発フロ...
** master/develop/featureブランチのイメージ [#y540b013]
全体像を示すと以下の感じ。本来のGit-Flowは masterへのマー...
#ref(model.png)
** 事前準備 [#p44aa929]
GitHub上では masterとdevelopというブランチが作成済みとい...
** 開発者がローカルの環境で初回やること [#f3ad2b35]
開発者が開発を始めようと思ったとき((ようするに個別のチケ...
手順は [[GitHub/リモートのブランチをcloneする]] をご確認...
ここまでで developというローカルのブランチが作成・チェッ...
$ git branch -vv
develop aa3dca8 [origin/develop]
master aa3dca8 [origin/master]
各開発環境で初回やるのはここまでで、チケットを対応する際...
** チケットごとのブランチで開発 [#r556248c]
***チケットごとのブランチの作成 [#de37d929]
$ git checkout -b feature/dev_50 develop ←50は、チ...
Switched to a new branch 'feature/dev_50'
$ git branch -vv
develop aa3dca8 [origin/develop]
* feature/dev_50 aa3dca8
master aa3dca8 [origin/master]
developから派生したチケット番号#50用のブランチが作成でき...
ちなみに、-vvをつけることで、いま作成したブランチ feature...
***細かなコミットとかを進めていく使い捨てブランチを作成 [...
$ git checkout -b feature/dev_50_spike develop
$ git branch
develop
feature/dev_50
* feature/dev_50_spike
master
ここまでを図で示すとこんな感じ。
#ref(01.png)
開発はここで進めていきます。全体に反映されたくないような...
なので、コミットを進めていくと下記の図のような感じになり...
#ref(02.png)
***チケットごとのブランチ feature/dev_50 へコミットをまと...
最終的に対応が完了したら、feature/dev_50 にコミットをマー...
[[GitHubでコミットをまとめる>GitHub/コミットをまとめる]] ...
$ git checkout feature/dev_50 ←dev_50へ移動して
$ git merge --squash feature/dev_50_spike spikeの内容を...
feature/dev_50_spikeで作業していた内容が、まるっと featur...
#ref(03.png)
***チケットごとのブランチ feature/dev_50 のコミット [#gc3...
あとはこれらをコミットするときにちゃんとコメントを書いて...
$ git commit -a
これで上記の図の右の状態になりました。
*** developの更新分のリベース [#jb31c024]
さて、チケットの対応が完了したのですが、feature/dev_50を...
に整理しましたが、ようするに下記の通りです。
git checkout develop developへ移動
git pull origin develop ローカルのdevelopを更新
git checkout feature/dev_50 dev_50へ移動
git rebase develop 派生元のdevelopの内容でリ...
... コンフリクトした場合はココでゴニョゴニョするのですが...
こうやって、feature/dev_50 のしらないところで更新されたde...
** サーバへ feature/dev_50 の内容をプッシュ [#z7ea2e6f]
そしてリモートの feature/dev_50 へpushします。
$ git push origin feature/dev_50
Total 0 (delta 0), reused 0 (delta 0)
To https://github.com/xxxxxx/helloworld.git
* [new branch] feature/dev_50 -> feature/dev_50
#ref(04.png)
** サーバの feature/dev_50 から、developに対してのプルリ...
最後に、GitHubサーバの feature/dev_50 から developに対し...
以上で、 ローカルの feature/dev_50 で開発していた内容が、...
チケット担当者の作業は以上で完了です。
**参考 [#i150b780]
-[[7. merge --squash【チュートリアル3 コミットを書き換え...
-[[GitHubへpull requestする際のベストプラクティス - hnwの...
----
この記事は
#vote(おもしろかった,そうでもない)
- リモートへ送信したフィーチャーブランチは、マージしても...
- spike状態のモノも、他との共有を目的にPushしてもよいかも...
- developブランチにマージされたあとのリリース作業について...
- mavenを使うプロジェクトの場合、gitflow-maven-plugin を...
- 具体的にはdevelopまでマージしたあと(プルリクベースで)、...
#comment
#topicpath
SIZE(10){現在のアクセス:&counter;}
ページ名: