そのため、次のpost-commit
フックを使用して、gh-pages
ブランチをマスターで最新の状態に保つようにしています。
#!/bin/sh
git checkout gh-pages
git rebase master
git checkout master
ここの提案ごと
これが私のgitlg
コマンドからの出力です(SOのどこかで見つけました、投稿してくれた人に感謝します)
[alias]
lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative
ターミナルに読みやすいダンプが生成されます。
* 463703d - (HEAD, gh-pages) Merge branch 'gh-pages' of github.com:unphased/ply into gh-pages (2 minutes ago) <Ste
|\
| * ef1a304 - (origin/gh-pages) Merge branch 'gh-pages' of github.com:unphased/ply into gh-pages (8 minutes ago) <
| |\
| | * 2d0c8a1 - Merge branch 'gh-pages' of github.com:unphased/ply into gh-pages (26 minutes ago) <Steven Lu>
| | |\
| | | * 840df78 - Merge branch 'master' into gh-pages (68 minutes ago) <Steven Lu>
| | | |\
| | | * \ 7db37cc - Merge branch 'master' into gh-pages (7 hours ago) <Steven Lu>
| | | |\ \
| | | * | | 17f3dbc - Create gh-pages branch via GitHub (24 hours ago) <Steven Lu>
| | | / /
| | * | | 48bdf22 - Create gh-pages branch via GitHub (31 minutes ago) <Steven Lu>
| * | | | d15c161 - Create gh-pages branch via GitHub (9 minutes ago) <Steven Lu>
* | | | | 7024a62 - Create gh-pages branch via GitHub (4 minutes ago) <Steven Lu>
* | | | | f61b62d - (master) hopefully stuff calms down (4 minutes ago) <Steven Lu>
|/ / / /
* | | | 05c26a5 - (origin/master, origin/HEAD) some more progress (9 minutes ago) <Steven Lu>
|/ / /
* | | 20c6bdb - some progess on the touchmove event handler finally. hopefully this one will run the post-commit hoo
* | | d1ab53e - commented out touchmove log.. testing the auto-rebase on gh-pages (45 minutes ago) <Steven Lu>
| |/
|/|
* | 15fe88d - small update to js (70 minutes ago) <Steven Lu>
|/
* 6b5ee18 - updating note about mutation events' (7 hours ago) <Steven Lu>
* 1b43564 - okay now about ready to start assembling offsets. [snip]
履歴の残りの部分はまったく面白くありません (これは github ネットワーク グラフの表現で、頭が痛くなりにくいかもしれません)。新しいビット ( の更新gh-pages
) も面白くないようにしたいと思っていましたが、私には明らかです。現在、rebase
正しく発生している場合に発生してはならない非早送りマージが大量に発生しています。
したがって、リベースが発生したときに何がうまくいかないかという問題の診断をどこから始めればよいかまったくわからないので、最後にコミットしたときの出力を示しますmaster
。
$ git commit -a -m"hopefully stuff calms down"
Switched to branch 'gh-pages'
First, rewinding head to replay your work on top of it...
gApplying: Create gh-pages branch via GitHub
iApplying: Create gh-pages branch via GitHub
Using index info to reconstruct a base tree...
<stdin>:985: trailing whitespace.
<stdin>:1019: trailing whitespace.
article, aside, canvas, details, embed,
<stdin>:1020: trailing whitespace.
figure, figcaption, footer, header, hgroup,
<stdin>:1031: trailing whitespace.
article, aside, details, figcaption, figure,
<stdin>:1055: trailing whitespace.
line-height: 1.5;
warning: squelched 27 whitespace errors
warning: 32 lines add whitespace errors.
Falling back to patching base and 3-way merge...
No changes -- Patch already applied.
Applying: Create gh-pages branch via GitHub
Using index info to reconstruct a base tree...
<stdin>:985: trailing whitespace.
<stdin>:1019: trailing whitespace.
article, aside, canvas, details, embed,
<stdin>:1020: trailing whitespace.
figure, figcaption, footer, header, hgroup,
<stdin>:1031: trailing whitespace.
article, aside, details, figcaption, figure,
<stdin>:1055: trailing whitespace.
line-height: 1.5;
warning: squelched 27 whitespace errors
warning: 32 lines add whitespace errors.
Falling back to patching base and 3-way merge...
No changes -- Patch already applied.
Switched to branch 'master'
Your branch is ahead of 'origin/master' by 1 commit.
[master f61b62d] hopefully stuff calms down
1 files changed, 2 insertions(+), 1 deletions(-)
ここで私が興味を持っている通常のものとは異なる多くのことの中で、「GitHub 経由で gh-pages ブランチを作成する」というラベルの付いたコミットが追加され続ける理由があります。gh-pages
これは確かにブランチでの最新のコミットであり、おそらくrebase
.
リベースを使用すると、master への各コミットが gh-pages で複製されるログを作成できると確信できます (コミットごとに gh-pages でマージ コミットが作成されるマージを使用するのではなく) master) ですが、今はリベースせずにマージを行わなければなりません。