• # Mon utilisation de git ...

    Posté par (site web personnel) . En réponse au message SubVersion vs Mercurial vs Git .... Évalué à 2.

    Je travail moi aussi sur un petit projet dont je suis le seul contributeur.
    Je code de chez moi, mais aussi un peu du boulot (pas du gros dev, mais comme je me sert du soft au boulot, j'ai souvent du bug fix à faire). De plus les sources sont publiées sur github.

    J'ai plusieurs dépots:

    • Un chez moi
    • Un au boulot
    • Un sur github
    • Un sur une clé usb

    J'apprécie énormément le coté décentralisé de git. Voici mon "workflow":

    • Je développe principalement de chez moi.
    • Je ne pousse sur le dépot public que à partir de chez moi.
    • Le boulot me sert de cas d'utilisation réel, j'ai donc besoin de faire des échanges entre chez moi et le boulot sans passer par le dépot public, j'utilise donc ma clé usb.
    • Les nouvelles features faites chez moi, sont pas obligatoirement bug clean.
    • Je veux récupérer les bug fix que je fait au boulot chez moi.
    • Les bug fix du boulot sont vite fait mal fait.
    • J'ai des fois des changements du boulot que je ne veut pas pousser dans la branch principale.
    • Avant de pousser sur le dépot public, je fait donc pas mal de nettoyage sur tous les commit fait un peu partout. Je réécrit donc un historique de commits propres qui décrivent bien les évolutions du code. Tous mes essais, retours en arrière et bugs dignes d'un dev de première année sont inconnus du dépot public.

    Je pourrait faire à peut prêt équivalent avec svn : Avoir une branch dev sur svn, faire tous le dev dessus et pousser sans trop réflechir. Mais je perdrait pas mal de fonctionnalités comme :

    • la possibilité de garder des dev privés
    • pousser plusieurs commits sur le dépot publique tout en réécrivant l'historique des modif que j'ai faites.
    • La simplicité d'avoir des dev temporaires/privés fait en cours de développement d'une feature, de les garder alors que je pousse la feature sur le dépot publique.

    Je n'ai jamais utilisé Mercurial mais je pense qu'il doit être possible de faire à peut prêt la même chose qu'avec git. (Decentralized power)

    Matthieu Gautier|irc:starmad