开放源代码 - github,merge后我的fork自动ahead于‘主干’1commit
怪我咯
怪我咯 2017-04-28 09:04:59
0
2
753

我从A(主干)fork的,一段时间后我的fork behind于A,然后create pull request,然后在我的fork这里merge,之后我的fork就会自动ahead于A 1 个commit。。。

有没有人遇到和我一样的github问题,,,怎么办能自然同步于A

怪我咯
怪我咯

走同样的路,发现不同的人生

全員に返信(2)
黄舟

fast-forward でない限り、プル後に自動的にマージされ、マージごとにコミット レコードが生成されます。 fast-forward,pull之后会自动merge,而每次merge就会产生一个commit记录。

解决办法:

  1. 假如你的repo只是晚于主干,没有不一样的commit,那么就是fast-forward。这时候先pull到本地上来,跟本地的内容merge在一起。这种情况不会产生额外的commit记录。然后再将本地代码push到自己的远程repo上。

  2. 如果不满足fast-forward条件,那么需要pull --rebase到本地,并完成rebase操作。成功后再push

    解決策:
リポジトリがトランクよりも後で、別のコミットがない場合は、早送りになります。このとき、まずローカル コンピューターに pull を実行し、それをローカル コンテンツとマージします。この状況では、追加のコミット レコードは生成されません。次に、ローカル コードをリモート リポジトリにプッシュします。

  • 🎜fast-forward 条件が満たされない場合は、ローカルに pull --rebase を実行し、rebase を完了する必要があります。手術。成功したら、リモート リポジトリに push を実行します。 🎜🎜 🎜 🎜添付ファイル: 「~~rebase~~ リベースする方法」に関する情報: https://github.com/edx/edx-platform/wiki/How-to-Rebase-a-Pull-Request🎜
  • いいねを押す +0
    过去多啦不再A梦

    したがって、リベースを使用する必要があります...

    ブランチで何も行わない場合、リベースであろうとマージであろうと、追加のコミットなしで、ブランチは A のヘッドと同じになります。
    もちろん、自分で何かを変更した場合、完全に同期されることはありません。そうでない場合は、バージョン管理システムで懸命に作業する必要があります。
    ただし、リベースとマージの違いは、マージはこの時点で新しい変更を作成するのに対し、リベースは新しい変更ログを作成せずに、このブランチの変更履歴を A の履歴に接続するだけであることです。

    いいねを押す +0
    人気のチュートリアル
    詳細>
    最新のダウンロード
    詳細>
    ウェブエフェクト
    公式サイト
    サイト素材
    フロントエンドテンプレート