IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual Studio Discussion :

Suivi des commits


Sujet :

Visual Studio

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2010
    Messages : 72
    Points : 70
    Points
    70
    Par défaut Suivi des commits
    Bonjour,

    Voici le contexte : j'ai repris le code d'une (relativement) grosse appli en C#.
    J'utilise Visual Studio Community 2015.
    Je suis le seul à travailler sur ce code (ou tout autre code d'ailleurs, ce n'est pas une boite de développement).

    Histoire d'avoir un historique de ce que j'ai fait pour corriger/évoluer le code, j'enregistre le code modifié (avec l'anayse/explication, es repères, remplacer par, etc...).
    Le numéro du fichier corresponds à un ticket (Redmine). J'utilise Notepad++ pour rendre plus lisible les fichiers (mise en forme)...
    ... c'est bien, mais "archaïque"!

    J'aimerais pouvoir faire la même chose directement dans Visual (ou un outil dédié plus évolué que des txt!) :
    - pour chaque ticket, enregistrer le code modifier pour retrouver facilement les modifications
    - ajouter un commentaire / titre histoire que ça reste parlant

    En gros, gérer mes "commits" comme dans un SVN (vocabulaire peut-être inexacte, n'utilisant pas ces systèmes de gestions de version ma vision peut être erronnée).
    Mais plus proche de l'historique de Wikipedia que d'un GIT, de part sa simplicité!
    - stockage en ligne non obligatoire ( j'ai essayé AnkhSVN... qui demande l'URL d'un repo. Pas adapté pour moi)
    - pas besoin de gestion des branches, etc
    - pas de sous (Visual Studio Ultimate semble proposer des choses sympa, mais ce n'est pas gratuit et pas de budget possible pour mon "confort personnel" ;-)).

    Une idée?
    Que ce soit un addon à VS, un outil dédié à part ou vos "bidouilles" personnelles, je suis intéressé!
    Merci.

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Bonjour,

    Je capte pas trop ton histoire avec Redmine, les numéros de fichiers toussa toussa ... Cependant je suis dans le même cas que toi, c'est à dire petit dev solitaire intégré dans une boite dont le cœur de métier est loin de l'informatique ...
    De ce que je comprends de ton besoin, c'est finalement rien de plus qu'un backup de toutes tes sources avec un commentaire, et voir ce qu'il y a de modifié depuis le dernier backup ....
    Tu ne semble pas aimer GIT mais il semble pourtant être exactement ce qu'il te faut , ok il permet de faire des branches en plus mais qui peut le plus peut le moins...
    Perso j'utilise GITExtensions et l'extension VS qui va bien. Tu n'aurais qu'a faire un commit avec le commentaire que tu veux... et pouf c'est tout ! Tu peux recommencer à coder...

    De plus même si tu es seul je ne peux que te conseiller d'utiliser un logiciel de versionning pour tes sources et donc Git, ok la prise en main prend plus d'une heure lorsque l'on part de 0, mais pas une semaine non plus... Et les bénéfice sont immenses ! Premier exemple, tu pourrais faire une branche pour simplement tester un truc, sa marche tu fusionnes, ca marche pas tu reviens a la branche stable (en gardant la possibilité de revenir à ton truc), et ça sans copier toutes tes sources dans un dossier pour avoir un backup au cas ou !!! et un changement de branche ne prend qu'un clique qui ne dure pas 1 seconde... D'ailleurs tu n'a jamais eu à corriger un bug tout bête ou rajouter une fonctionnalité en urgence, alors que ton code était complétement à la ramasse car tu étais parti dans une grosse refonte d'un truc ??? parce que dans un tel cas sans Git c'est un peu chaud non ?

    Je te le dit comme je pense je suis dans le même contexte que toi, et aujourd'hui je ne pourrais plus travailler sans Git (en tout cas sans un gestionnaire de code source). C'est d'ailleurs un étalon pour ma part, un vrai développeur pro se doit de gérer correctement ces sources... c'est quand même la base du métier.

    J@ck.
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2010
    Messages : 72
    Points : 70
    Points
    70
    Par défaut
    Bonjour J@ck,

    Redmine, c'est un peu hors sujet (cité au cas ou une extension fasse une liaison Redmine/CVS/... autant rêver).

    Je suis toujours réticent à utiliser des outils démesuré par rapport à un besoin en fait ;-).
    Et comme je ne suis pas développeur non plus (officiellement, même si là j'ai 3 mois de dev à presque temps complet ^^), je suis loin des bonnes pratiques quand je n'y trouves pas un gain réel.
    En cas de bug, mes fichiers me permettent le suivi/analyse/redo (manuel mais bon...). Et ça reste limité (voir ci-dessus, le dev est un outil et non pas mon métier).

    Dans le cas de GIT, le repository peut être un dossier local?
    C'est typiquement une chose qui me chagrine : devoir mettre en place un site (même local) pour gérer ça. Ca implique pas mal de chose (nos sites Intranet sont gérés précisément, documentés, etc...bref, galère si je dois en ajouter). C'est ce qui m'a bloqué avec AnkhSVN.
    Pour l'apprentissage, si au bout du compte je gagne en efficacité (= ne pas devoir passer plus de temps à gérer les branches/commit etc qu'à gérer mes fichiers actuels) pourquoi pas.

    Sur ce que j'ai pu tester depuis mon post (pour les intéres:
    - LocalHistory sur CodePlex, simple historique des modifications : très basique mais permet de comparer/restaurer très facilement (vraiment!). Si on pouvait nommer, commenter les historiques, ce serait idéal pour moi.
    - AnkhSVN... avec TortoiseSVN qui permet de créer un dépôt local. Ca marche, c'est forcément plus complexe donc pour l'instant j'y perds du temps mais à voir à l'usage.
    - Git, essayé 5mn (présent dans les choix de VS). Suffisant pour perdre mes fichiers . Sûrement une fausse manipulation mais je ne peux perdre du temps dessus, ça attendra une période plus calme!

  4. #4
    Membre confirmé Avatar de joKED
    Profil pro
    Imposteur en chef
    Inscrit en
    Février 2006
    Messages
    337
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Imposteur en chef

    Informations forums :
    Inscription : Février 2006
    Messages : 337
    Points : 458
    Points
    458
    Par défaut
    Bonjour,

    Tu peux tout à fait utiliser GIT avec un dossier local (ou réseau), et c'est super simple.

    Tu crées un premier dossier (MONREPO).
    Dans MONREPO , ouvre une console git, puis : git init --bare qui va initialiser ton repo
    Copie ensuite l'adresse de ton dossier (c:/MONREPO/)

    Ensuite, tu vas cloner ton repo de base pour commencer à travailler.
    Tu te mets donc dans ton dossier de travail habituel (genre "Mes Documents"), et : git clone "c:/MONREPO" . Te voilà avec un repo de travail tout neuf.

    Il ne te reste plus qu'à y mettre ton contenu, et jouer à commit, créer des branches, etc. puis pousser le tout vers le repo de base d'un simple git push

    En gros, c'est ultra simple, pas besoin d'installer un serveur, d'héberger dans le cloud, ou que sais je. Tout se passe en local.
    Tant va la cruche à l'eau qu'à la fin y'a plus d'eau.

  5. #5
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    @joKED complétement d'accord !

    Je rajouterais qu'il peut même installer GitExtensions (l'appli pas le pluging de VS, je sais pas pourquoi je l'aime pas et donc ne l'utilise pas) et donc tout faire en clique/clique ! C'est ce que je fais. Je n'utilise jamais les 2 applis en même temps, par exemple je lance GitExtensions, je choisis les sources/branches que je veux, je lance VS, je code toussa toussa, c'est ok je ferme VS et dans GitExtensions je fais un commit de ce que je viens de faire, je fusionne ou pas ..., et on recommence....
    Dans l'idée j'ai une branche que j'appel "stable" sur laquelle je ne modifie jamais directement le code, chaque modif et faite dans une autre branche, et si ok alors je fusionne avec la branche stable.

    Si ça t'intéresse j'essayerai de faire un petit tuto rapide pour mettre en place GitExtension dans un tel cas, ça me servira également par la suite...

    J@ck.
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2010
    Messages : 72
    Points : 70
    Points
    70
    Par défaut
    Merci pour vos conseils!

    Je tente déjà d'explorer un peu plus la solution SVN, un peu de persévérance avant d'essayer autre chose (même si ce n'est pas concluant... j'ai intégré ma solution, mais tous les projets sous cette solution ne sont pas suivi. Je m'en suis aperçu en ne retrouvant qu'une partie d'un commit impactant plusieurs projets).

    Mais présenté comme ça, GIT semble effectivement attrayant.
    Dur de caser au milieu du dev, mais je testerais.
    Je passe la discussion en résolu mais d'autres avis ou suggestions reste toujours intéressant.

    Merci à vous deux!

    ah si : des reproches concrets à la version plugin VS? JE pensais m'y diriger, une intégration à VS pouvant simplifier le travail (commit d'un ticket sans devoir fermer/rouvrir, idem pour les diff,...)

  7. #7
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Bonjour,

    Je n'ai pas vraiment de critique sur le pluging, c'est plutôt ma façon de faire qui fait que je ne l'utilise pas. En faite j'ai un dossier qui contient toutes mes sources, avec tous mes projets d'appli, de dll, les .csproj .suo etc. Ainsi je ne touche jamais à Git si VS est ouvert, et lorsque je recharge une branche je retrouve exactement l'environnement que j'ai quitté. Si je fais des commit avec VS d'ouvert, toutes modifications de fichiers, de config, y compris la fermeture de VS provoquera mécaniquement une nouvelle demande de commit...
    Au final, ma façon de faire m'évite juste de paramétrer GIT aux petits oignons en lui donnant les fichiers à exclures ... , et finalement ça me va bien dans le sens ou je sépare les choses, je code je test je fais mon taf, c'est ok c'est fini, je ferme VS, je commit, je change de branche (ou pas) et je relance VS, .... et on recommence.

    Tu sais pour tester Git, tu peux le faire en 5 min, tu dll GitExtensions, tu lui donne comme repo un dossier avec un ou 2 fichiers de test, tu fais des modifs sur les fichiers, création, suppression ...etc
    tu recommit tu recrée une branche ....

    Bon code,
    J@ck
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VS.NET] Liens relatifs et suivi des sessions ?
    Par Webman dans le forum ASP.NET
    Réponses: 6
    Dernier message: 18/11/2004, 22h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo