pull requestバージンからの卒業

pull requestバージンからの卒業

Send a pull request

git submoduleで追加していた外部モジュールがPHP5.4で動かなかったので適当に直しました
これはこれで別によかったんですけど、本番環境以外の環境を作る時にいちいち手で修正しなきゃ行けないのもなんだかな〜と思い
pull requestバージンを卒業してみることにしました

pull requestまで

現状の確認

~~~
$ cd Vendor/Submodule
$ git status

# On branch master
# Changed but not updated:
# (use “git add …” to update what will be committed)
# (use “git checkout — …” to discard changes in working directory)
#
# modified: cache/file.php
# modified: request.php
#
no changes added to commit (use “git add” and/or “git commit -a”)
~~~

branchを切る

名前は何でもいいと思います
~~~
$ git checkout -b feature

M cache/file.php
M request.php
Switched to a new branch ‘feature’
~~~

コミット

コミットをまとめたりしない場合はこのコミットコメントがpull requestする時のチケット名になります
~~~
$ git commit -a
[feature 4f8b479] Fixed an error because it is PHP5.4
2 files changed, 37 insertions(+), 37 deletions(-)
~~~

github上でfork

修正したいリポジトリーをforkし、自分のリポジトリに追加します

追加したリポジトリを追加する

~~~
$ git remote add myfork [email protected]:ユーザー名/リポジトリ名
~~~

pushする

~~~
$ git push myfork feature

Counting objects: 9, done.
Delta compression using up to 3 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (5/5), 694 bytes, done.
Total 5 (delta 3), reused 0 (delta 0)
To [email protected]:ユーザー名/リポジトリ名
* [new branch] feature -> feature
~~~

githubでpull request

先ほど追加したリポジトリ(https://github.com:ユーザー名/リポジトリ名)へ行きpull requestをする

Mergeされたら

git submodule updateじゃ更新されないので

~~~
git submodule foreach ‘git checkout master; git pull’
~~~
git submoduleの更新 – うんたらかんたら日記

以上で、submoduleをpull requestして更新する流れでした