2012-01-27 17 views
1

枝の歴史の歴史を知る方法はありますか? 私が意味することは、ブランチは明らかにコミットハッシュへのポインタに過ぎないということです。私が欲しいのは、ハッシュがサーバー上のブランチによって変更されるたびに、その変更がどこかでログに記録されるようになるたびにです。つまり、誰かがブランチをプッシュするたびに、ニュースフィードに新しいエントリが追加されます。 oldhashからnewhashに変更されました。 "歴史の歴史

gitはリベースによって履歴を編集できるので便利ですが、古いハッシュを見ることができれば古い履歴に戻ることができます。私はgithubで同様の機能を見つけることはできません。非ffプッシュを許可すると、ブランチが指し示したハッシュの履歴を持つことが本当の救済者になる可能性があります。

答えて

1

GitHub自体でこれを行う方法はありませんが、独自のローカルクローンには組み込みがあります。これはreflogと呼ばれています。詳細はgit help reflogをご覧ください(詳細はanother link)。

+0

私はreflogを認識していますが、残念ながらそれは全く同じではありません。一つは、あまりにも冗長です。それはすべての変化を含んでいるので、もし私がリベースをして、私が別の枝にいると思っていたので、何とかマスターが台無しになってしまったら、一週間後にそれを見つけたら... reflogを見ているのでしょうか?もう一つの問題はもちろん、誰かがそれを上流側で行っている場合、どのようにして誰がそれをしたのか、いつ見つけることができますか? –

+0

GitHubはreflogを保持しないので、基本的にはできません。 (あなたのリポジトリへの書き込みアクセス権を与える人には注意してください) – Amber

+0

'git log --walk-reflogs 'は、何が起こっていたのかを理解するのに役立ちます。 – Amber