Est-il plus facile de gérer le code avec Git ou Bazaar? [fermé]
8 réponses
je suppose que vous avez également lire Bazar vs Git l'article, mais en fin de compte, tout se résume à ce que vous sont à la recherche en terme de "gestion de code riche en fonctionnalités".
si, par gestion de code, vous faites référence à le fichier (et répertoires et renommage), allez avec Bazaar.
Si, par le code de gestion, vous êtes à la recherche à contenu gestion, Git est conçu pour gérer exactement cela (le de la zone de transit, par exemple, vous permet d'enregistrer ce courant contenu vous souhaitez engager, même si vous avez déjà commencé à faire quelques modification importante vous finissez par ne pas vouloir s'engager dans la branche)
Pour être sûr, re-lire la vision originale de Linus pour Git (en avril 2005). Si vous êtes d'accord avec elle, les chances sont Git sera de livrer ce que vous voulez. En bref:
- modèle très simple (blob-arbre-commit-tag)
- pas de métadonnées ajoutées (pour le suivi de renommage par exemple)
- des principes "forts" comme:
- "fichiers" n'a pas d'importance. La seule chose qui compte, c'est comment "content" se déplaçait dans l'arbre
- vous avez un SCM qui suit ce qui a changé au seul niveau qui compte vraiment, à savoir l'ensemble du projet. Aucune information fait réellement un sens, à une plus petite granularité, puisque, par définition, un "projet" dépend des autres fichiers, ou il ne serait pas un projet
cette notion de "tout projet" est en fait une force et un limite pour Git en terme de gestion de projet: il ne faut pas chercher à mettre tout en dépôt Git.
Il va descendre à la préférence personnelle, simple et clair.
J'utilise Bazaar et je trouve cela extrêmement facile. La mise en scène sont concept en Git donne une certaine flexibilité agréable, mais il ajoute également de la complexité. Vous pouvez facilement gérer le code dans Bazaar avec quelque chose comme 4 commandes (add, commit, merge (peut-être push/pull) et log ou qlog), et vous n'avez besoin de fusionner que si vous voulez plusieurs branches.
Habituellement Bazar semble faire la bonne chose. Je n'ai jamais vraiment eu de problème en faisant quelque chose de stupide ou en me laissant faire quelque chose de stupide.
je pense que cela dépend de vos goûts personnels - il y a des arguments pour les deux. J'ai largement utilisé bzr pour des projets personnels depuis quelques années, depuis les 0.8 jours, mais je suis passé à git l'année dernière, et je n'ai jamais regardé en arrière, au moins pour la gestion du code source.
je suis trop paresseux pour réécrire mon propre impression, mais pour résumer:
- bzr fonctionne de manière plus cohérente sur toutes les plateformes
- bzr est plus facile à découvrir (si vous on donne l'outil pour toute documentation, n'importe quel utilisateur semi-compétent pourra utiliser bzr, ce n'est pas si vrai avec git)
- bzr est plus facile d'étendre à une API façon, git est plus facile d'étendre à un unix (conduites)
- git est immensément plus puissant IMHO; en particulier, je suis convaincu que leur approche pour la manipulation de renommer, et le suivi de contenu est la bonne pour de nombreux cas
- le système BZR revno n'est pas bon IMHO. Il semble plus simple, mais il est profondément confus une fois que vous commencez à avoir beaucoup de branches et de changer la ligne principale.
le développement de Bazaar s'est arrêté. La dernière version est 2.6, datée 2013-08-04. Il y a eu moins de 20 s'engage depuis en avril 2015.
si vous commencez avec le contrôle de version, vous devriez considérer un qui est actif (très probablement ce sera Git ou Mercurial).
Edit 1: une version 2.7 a été faite depuis mon post, mais cela ne change pas le fait que le projet est essentiellement morts avec ~10 commits/an.
Modifier 2: Il y a maintenant une fourche de Bazar appelé Breezy avec plus d'activité que le Bazar. Je doute que cela devienne un projet vraiment actif, mais au moins cela signifie que l'outil est maintenu (il devrait survivre à la fin de Python 2 par exemple, un des objectifs de Breezy étant de porter à Python 3).
la seule chose que Git fait beaucoup, beaucoup mieux est de manipuler beaucoup de branches. Il le fait beaucoup plus rapidement que bzr, et ne nécessite pas de copies multiples du code source. Toutes les branches sont dans le même répertoire. Je me retrouve à utiliser des branches git beaucoup plus souvent que je ne le faisais avec bzr, surtout parce que mon repo n'est pas petit et implique aussi des fichiers binaires (total 180Mo).
EDIT: en Fait, j'ai tort. --pas d'arbres, + léger caisse fonctionne comme Git. Merci, FryGuy. Oh, et j'ai trouvé cette entrée de blog qui contient des informations utiles.
Bazaar est très bien intégré avec ubuntu, j'utilise ubuntu depuis de nombreuses années maintenant, fatigué de passer à d'autres distro plus geeky, mais aucun point. Je choisis bazaar plutôt que Git / mercurial coz les notifications sont très bien intégrées dans Ubuntu. En outre, vous obtenez l'hébergement gratuit de Launchpad qui est un plus énorme.
la meilleure raison d'utiliser git vs bzr / hg est parce que GitHub est une roche. Launchpad est OK, mais github obtient la recherche, sociale et de style droit.
techniquement launchpad est probablement mieux à bien des égards. Les fusions, les systèmes de construction intégrés et d'autres caractéristiques rendent launchpad attrayante pour beaucoup. L'éditeur de GitHub, the gists... il y a un flux là-bas que launchpad n'a pas. Visuellement, socialement, il n'y a pas de concurrence.