Maison  >  Questions et réponses  >  le corps du texte

怎么合并github master 和 自己从公司git上checkout的分支?

在公司git服务器上建了一个项目,然后建立一个分支 b1
然后添加了一个github的master
git remote add r1 https://github.com/xx/xx

怎么合并本地分支b1和远程r1分支呢?

补充编辑,原始需求是在一个github活跃的项目上面做二次开发,又要将代码放到公司git上,或者大家有什么好的建议? 谢谢

漂亮男人漂亮男人2727 Il y a quelques jours668

répondre à tous(3)je répondrai

  • 仅有的幸福

    仅有的幸福2017-05-02 09:46:44

    Si vous souhaitez fusionner deux branches, vous devez au moins vous assurer qu'elles ont le même ancêtre. D'après l'affiche originale, elles ont bien le même ancêtre, elles peuvent donc être fusionnées.
    Dans ce cas, mon plan est de cloner d'abord le projet dans l'entrepôt github localement à l'aide de la commande git clone, puis d'utiliser la commande git remote add ... pour ajouter l'entrepôt sur le serveur git de l'entreprise en tant qu'entrepôt distant, puis de l'utiliser ; git pull localement Commande pour extraire et fusionner. Bien sûr, après la commande git pull, ajoutez l'alias url et le nom de la branche distante enfin, si le conflit est résolu et la fusion est terminée. , il peut être poussé vers l'entrepôt distant de l'entreprise.
    Je pense qu'il pourrait être plus sûr de fusionner dans un autre référentiel local comme celui-ci. Bien sûr, comme je n'ai jamais réellement rencontré un tel problème, si ma solution ne fonctionne pas, j'espère que l'affiche pourra me donner un retour sur le problème.

    répondre
    0
  • PHP中文网

    PHP中文网2017-05-02 09:46:44

    git push Vous pouvez choisir le serveur distant à utiliser, alors extrayez d'abord la branche de github, résolvez le conflit, puis transmettez-la au maître de la branche de l'entreprise et attendez que les personnes de l'entreprise vérifient la fusion. . Il ne devrait y avoir aucun problème

    répondre
    0
  • 为情所困

    为情所困2017-05-02 09:46:44

    Selon l'interrogateur, r1 n'est en fait pas une succursale, mais une télécommande. Supposons d'abord que vous souhaitiez fusionner la branche locale b1 et la branche principale de r1.

    Maintenant que vous avez ajouté r1, il ne vous reste plus qu'à :

    1. Passez d'abord en b1. La commande est git checkout b1

    2. Récupérez le pointeur HEAD de la branche principale r1. La commande est git fetch r1

    3. Appliquer le contenu de la branche principale r1 au local. Vous pouvez utiliser git merge r1/master ou git rebase r1/master. Le premier génère des enregistrements historiques non linéaires et le second génère des enregistrements linéaires.

    Ensuite, vous le poussez vers la bibliothèque de l'entreprise et vous avez terminé

    Au fait :
    git pull = git fetch + git merge
    git pull --rebase = git fetch + git rebase

    répondre
    0
  • Annulerrépondre