2017-01-10 1 views
0

大きなプロジェクトの中に、閉じたマージリクエストがあります。マージ要求には、マージに関与したすべてのコミットへのリンクがあります。マージ後、該当するブランチが削除されました。git SHAを手動で設定する/アーカイブされたマージのためのGitLabコミットリンクを更新する

リベースのため、アーカイブされたマージ要求のコミットSHAは、マスターブランチ(または現在利用可能なブランチ)のものと一致しなくなりました。適切なリンクが必要です。

私の質問:

は、私は手動でGitはSHAをコミットし、そうであれば、どのようにすることはできますか?

もしそうでなければ、マージ要求が新しく計算されたコミットSHAを指し示すようにコミットリンク(GitLab)を調整できますか?

答えて

2

SHA-1の合計は計算されているため、コミットの関数として手動で設定することはできません。つまり、SHA-1の合計を変更すると、コミットの内容と一致せず、したがって矛盾します。

目的のハッシュを取得するまで、アプリケーションを故意に変更しないようにする方法はありますが、成功する可能性は非常に低いです。 1つの技法は、所望のハッシュが作成されるまで、文書中に空白文字のシーケンスを挿入することである。これは、より長く、より効果的なハッシュアルゴリズムを用いて、特に非常に長い時間がかかることがあります。

0

私は私がいることを、あなたのコアの質問しているかどうかわからない:あなたはマージが削除にコミットへのリンクをコミットしたい

1あなたのマージされたブランチがコミットあなたの合併 2を削除されているが、 3をリベースされましたブランチ ?

ローカルでマージされたブランチを削除した場合は、最後のコミットを元に戻すためにgit reflogを試すことができますが、アクションが十分に長く起こってサーバーにプッシュされていればOKになりません。

しかし、あなたが本当に必要としているのはなぜですか?

関連する問題