我从A(主干)fork的,一段时间后我的fork behind于A,然后create pull request,然后在我的fork这里merge,之后我的fork就会自动ahead于A 1 个commit。。。
有没有人遇到和我一样的github问题,,,怎么办能自然同步于A
走同样的路,发现不同的人生
fast-forward でない限り、プル後に自動的にマージされ、マージごとにコミット レコードが生成されます。 fast-forward,pull之后会自动merge,而每次merge就会产生一个commit记录。
fast-forward
解决办法:
假如你的repo只是晚于主干,没有不一样的commit,那么就是fast-forward。这时候先pull到本地上来,跟本地的内容merge在一起。这种情况不会产生额外的commit记录。然后再将本地代码push到自己的远程repo上。
pull
如果不满足fast-forward条件,那么需要pull --rebase到本地,并完成rebase操作。成功后再push
pull --rebase
rebase
push
早送り
したがって、リベースを使用する必要があります...
ブランチで何も行わない場合、リベースであろうとマージであろうと、追加のコミットなしで、ブランチは A のヘッドと同じになります。 もちろん、自分で何かを変更した場合、完全に同期されることはありません。そうでない場合は、バージョン管理システムで懸命に作業する必要があります。 ただし、リベースとマージの違いは、マージはこの時点で新しい変更を作成するのに対し、リベースは新しい変更ログを作成せずに、このブランチの変更履歴を A の履歴に接続するだけであることです。
fast-forward
でない限り、プル後に自動的にマージされ、マージごとにコミット レコードが生成されます。fast-forward
,pull之后会自动merge,而每次merge就会产生一个commit记录。解决办法:
假如你的repo只是晚于主干,没有不一样的commit,那么就是
fast-forward
。这时候先pull
到本地上来,跟本地的内容merge在一起。这种情况不会产生额外的commit记录。然后再将本地代码push到自己的远程repo上。如果不满足
解決策: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🎜したがって、リベースを使用する必要があります...
ブランチで何も行わない場合、リベースであろうとマージであろうと、追加のコミットなしで、ブランチは A のヘッドと同じになります。
もちろん、自分で何かを変更した場合、完全に同期されることはありません。そうでない場合は、バージョン管理システムで懸命に作業する必要があります。
ただし、リベースとマージの違いは、マージはこの時点で新しい変更を作成するのに対し、リベースは新しい変更ログを作成せずに、このブランチの変更履歴を A の履歴に接続するだけであることです。