Forum Programmation.autre Question sur GIT

Posté par  .
Étiquettes : aucune
1
16
août
2010
Bonjour,

Je travaille sur une carte récente Beagleboard de processeur OMAP 3530. Une carte d'extension Zippy2 avec un contrôleur Ethernet est relié sur la carte Beagleboard.

Pour avoir un noyau compatible avec ma carte d'extension Zippy2, je doit prendre les sources la branche "validation-20100805" du dépôt Git :

http://gitorious.org/beagleboard-validation/linux

Pour utiliser certaines fonctionnalités de la carte Beagleboard, comme l'utilisation du DSP, je dois prendre les sources du noyau de la branche dspbridge du dépôt Git :

http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap-(...)


Donc ça me fait deux noyau différents.

Est-il possible que j'ai les sources du noyau avec les correction des deux dépôt Git ?
  • # Merge

    Posté par  . Évalué à 3.

    Tu peut tenter un merge des deux branches.

    Tous les contenus que j'écris ici sont sous licence CC0 (j'abandonne autant que possible mes droits d'auteur sur mes écrits)

    • [^] # Re: Merge

      Posté par  . Évalué à 1.

      Je ne connais pas trop Git, tu pourrais m'indiquer comment faire ?
      • [^] # Re: Merge

        Posté par  (site web personnel) . Évalué à 2.

        git checkout branche1
        git merge branche2

        Attention, rien ne garantit que le noyau résultant sera fonctionnel!
        • [^] # Re: Merge

          Posté par  . Évalué à 1.

          Bonjour,

          git checkout branche1
          git merge branche2

          Le soucis c'est qu'il y'a deux dépots git différents :

          pour l'instant j'ai fait :

          # git 1
          mkdir git.kernel.org
          cd git.kernel.org
          git clone git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6.git
          cd ..

          #git 2
          mkdir gitorious.org
          cd gitorious.org
          git clone git://gitorious.org/beagleboard-validation/linux.git
          cd ..


          donc j'ai deux noyau provenant de 2 git différents.

          est-ce que je peux utiliser des branches des deux dépots pour un même noyau ?
          • [^] # Re: Merge

            Posté par  (site web personnel) . Évalué à 2.

            En fait, il ne faut pas cloner les deux dépôts, mais un seul, et ajouter l'autre comme "remote" supplémentaire:

            git remote add git://gitorious.org/beagleboard-validation/linux.git nomdelabranche

            après tu n'as plus qu'à faire le merge.
            • [^] # Re: Merge

              Posté par  . Évalué à 1.

              ok merci

              la commande me donne :

              debian:~/git/git.kernel.org/linux-omap-2.6# git remote add git://gitorious.org/beagleboard-validation/linux.git validation-20100805
              fatal: 'git://gitorious.org/beagleboard-validation/linux.git' is not a valid remote name
              • [^] # Re: Merge

                Posté par  (site web personnel) . Évalué à 2.

                Le nom est avant

                git remote add [-t ] validation git://gitorious.org/beagleboard-validation/linux.git
              • [^] # Re: Merge

                Posté par  . Évalué à 1.

                Cest bon j'ai réussi,

                par contre en sortie, j'ai :

                uto-merged arch/arm/mach-omap2/mux34xx.c
                Auto-merged arch/arm/mach-omap2/pm-debug.c
                CONFLICT (content): Merge conflict in arch/arm/mach-omap2/pm-debug.c
                Auto-merged arch/arm/mach-omap2/pm.h
                CONFLICT (content): Merge conflict in arch/arm/mach-omap2/pm.h
                Auto-merged arch/arm/mach-omap2/pm24xx.c
                Auto-merged arch/arm/mach-omap2/pm34xx.c
                CONFLICT (content): Merge conflict in arch/arm/mach-omap2/pm34xx.c
                Auto-merged arch/arm/mach-omap2/powerdomains34xx.h
                Auto-merged arch/arm/mach-omap2/prcm.c
                Auto-merged arch/arm/mach-omap2/prm-regbits-34xx.h
                Auto-merged arch/arm/mach-omap2/sdrc.c
                Auto-merged arch/arm/mach-omap2/sleep34xx.S
                CONFLICT (content): Merge conflict in arch/arm/mach-omap2/sleep34xx.S
                Auto-merged arch/arm/mach-omap2/usb-musb.c
                CONFLICT (content): Merge conflict in arch/arm/mach-omap2/usb-musb.c
                Auto-merged arch/arm/mm/Kconfig
                CONFLICT (content): Merge conflict in arch/arm/mm/Kconfig
                Auto-merged arch/arm/mm/alignment.c
                Auto-merged arch/arm/mm/proc-v7.S
                Auto-merged arch/arm/plat-omap/Kconfig
                CONFLICT (content): Merge conflict in arch/arm/plat-o
                ...

                Automatic merge failed; fix conflicts and then commit the result.
                debian:~/git/git.kernel.org/linux-omap-2.6# vim arch/arm/



                pour les confits, de quoi s'agit-il et comment ça se passe ?
                • [^] # Re: Merge

                  Posté par  (site web personnel) . Évalué à 4.

                  >>>pour les confits,

                  C'est délicieux, je préfère ceux au canard.

                  Bon je

                  []

                  ウィズコロナ

                • [^] # Re: Merge

                  Posté par  (site web personnel) . Évalué à 1.

                  Les mêmes parties de code ont été modifiées différement dans les 2 branches, il faut corriger à la main...

                  Une solution pour ton probleme, si tu n'as besoin que d'un driver de peripherique depuis un des arbres, est de prendre ce driver et le coller a la main dans l'autre arbre...
                  • [^] # Re: Merge

                    Posté par  (site web personnel) . Évalué à 2.

                    On ne peut pas faire un merge partiel avec git?
                    • [^] # Re: Merge

                      Posté par  . Évalué à 2.

                      "prendre ce driver et le coller a la main dans l'autre arbre"

                      je vais devoir faire ça je crois

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.