Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

versioning system (VCS)

28 réponses
Avatar
Jean-Yves F. Barbier
Salut liste,

je ne connais ces syst=C3=A8mes que pour r=C3=A9cup=C3=A9rer une version, m=
ais
maintenant, pour un dev, j'ai besoin d'en utiliser un.

J'ai besoin de:
* Plusieurs branches (stable, unstable, dev),
* Pouvoir revenir (d=C3=A8s fois) de bcp de versions en arri=C3=A8re sur ce=
rtains
fichiers seulement,
* Et surtout que =C3=A7a ne soit pas une usine =C3=A0 gaz n=C3=A9cessitant =
la lecture de
200 pages de doc pour apprendre =C3=A0 se servir de chaque ordre possible=
(un
poil intuitif, =C3=A7a changerait:)

Donc vos exp=C3=A9riences sont le bienvenu.

JY
--=20
like:
When being alive at the same time is a wonderful coincidence.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org
Archive: http://lists.debian.org/20110430153922.72cc07a9@anubis.defcon1

10 réponses

1 2 3
Avatar
Basile Starynkevitch
On Sat, 30 Apr 2011 15:39:22 +0200
"Jean-Yves F. Barbier" wrote:


je ne connais ces systèmes que pour récupérer une version, mais
maintenant, pour un dev, j'ai besoin d'en utiliser un.



Tu n'as pas indiqué quel genre de développement c'est.

J'ai besoin de:
* Plusieurs branches (stable, unstable, dev),
* Pouvoir revenir (dès fois) de bcp de versions en arrière sur certai ns
fichiers seulement,
* Et surtout que ça ne soit pas une usine à gaz nécessitant la lect ure de
200 pages de doc pour apprendre à se servir de chaque ordre possible (un
poil intuitif, ça changerait:)



Une question importante est de savoir qui va (au début, et surtout dans
l'avenir) utiliser ce versionneur. Vas tu l'utiliser tout seul pour un
développement sur lequel tu es le seul à travailler? Est-ce que les
contributeurs futurs à ton développement logiciel seront proches ou
éloignés? Développes tu sous et pour Linux? S'agit-il d'une applicati on
web? Est-ce un petit développement ex nihilo, ou bien pars tu d'un
logiciel source existant? S'agit-il de développer un logiciel libre? Ou
un logiciel qui pourrait plus tard être accédé voire modifié (via le
versionneur) par une grosse communauté? (Ainsi, même pour du
développement propriétaire, on ne fait pas les mêmes choix de
versionneurs dans une grosse multi nationale et dans une toute petite
PME)? S'il y a d'autres développeurs actuellement sur ce projet, à
quels versionneurs sont-ils habitués? Quel est le volume prévisible des
sources (ou autres, on pourrait aussi versionner des photos.. etc...) à
versionner? Est-ce que la connectivité est suffisante (par exemple,
accédera-t-on à ce versionneur depuis un autre continent?).

Un autre point très important: il n'est pas du tout nécessaire de
maitriser la totalité des fonctionalités d'un versionneur pour
l'utiliser avec profit. Par exemple concret, je connais mal git, mais
je l'utilise avec satisfaction pour des petits développements
personnels (logiciels ou documentation), et je n'en comprends pas tout.
Le livre "Pragmatic Guide to Git" de Travis Swicegood me parait clair.

Enfin, il faut savoir que changer de versionneur pendant un
développement est une opération délicate (qui peut nécessiter
l'interdiction de l'accès aux sources versionnées pendant plus d'une
journée), et une telle migration doit être planifiée et testée à
l'avance. Ainsi, le compilateur GCC a mis des années à passer de CVS à
SVN.

Il faut aussi savoir si on veut un versionnement centralisé (qui
convient probablement mieux à du logiciel propriétaire développé par
une équipe locale) ou un versionnement distribué.

Je te conseille donc git (surtout si tu veux un versionnement
distribué, mais je m'en sers aussi pour des projets où je suis tout
seul). La documentation complète est effectivement grosse, mais on est
pas du tout obligé de la lire en entier. Je ne connais pas du tout les
subtilités de git mais j'arrive à m'en servir sur des projets neufs
(c'est probablement plus difficile de migrer vers git depuis autre
chose).

Si tu voulais absoluement un versionnement centralisé (que je te
déconseille), tu pourrais prendre subversion.

Je ne te conseille pas bzr ni mercurial, mais je les connais très mal
et ne m'en sers que pour rapatrier du code source d'un logiciel libre
déposé ailleurs.

Il existe des entreprises qui vendent le service de versionnement. L'un
des avantages, c'est ipso facto de constituer une sauvegarde à
distance. Par exemple http://myversioncontrol.com/ ou http://github.com/

Pour du logiciel libre GPL, on trouve assez facilement des versionneurs
gratuits.

A priori je te conseille git, mais j'avoue l'utiliser avec satisfaction
sans en maitriser toutes facettes.

Cordialement
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Bernard Schoenacker
Le Sat, 30 Apr 2011 15:39:22 +0200,
"Jean-Yves F. Barbier" a écrit :

Salut liste,

je ne connais ces systèmes que pour récupérer une version, mais
maintenant, pour un dev, j'ai besoin d'en utiliser un.

J'ai besoin de:
* Plusieurs branches (stable, unstable, dev),
* Pouvoir revenir (dès fois) de bcp de versions en arrière sur
certains fichiers seulement,
* Et surtout que ça ne soit pas une usine à gaz nécessitant la
lecture de 200 pages de doc pour apprendre à se servir de chaque
ordre possible (un poil intuitif, ça changerait:)

Donc vos expériences sont le bienvenu.

JY



Bonjour,


serait il possible d'être un peut plus disert sur le sujet
concernant un équivalent de :

-a) "CVS"
-b) "SVN"
-c) "GIT"


est il possible de savoir si les clients sont win32 ou uniquement
GNU ...

liens :

http://www.linux-pour-lesnuls.com/cvs.php

slt
bernard


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Basile Starynkevitch
On Sat, 30 Apr 2011 16:06:07 +0200
Bernard Schoenacker wrote:

serait il possible d'être un peut plus disert sur le sujet
concernant un équivalent de :

-a) "CVS"



C'est mort CVS. SVN l'a remplacé, et il est déjà assez largement
obsolète, même s'il est très utilisé.

-b) "SVN"



http://fr.wikipedia.org/wiki/Subversion_(logiciel)

-c) "GIT"



http://fr.wikipedia.org/wiki/Git



est il possible de savoir si les clients sont win32 ou uniquement
GNU ...



Il me semble que la plupart des versionneurs libres ont des clients
pour des systèmes microsoft. Cela étant dit, je n'ai quasiment jamais
utilisé Windows (mais j'utilise Linux depuis 1993, et j'utilisais Unix
en 1985 - je développais sous SunOS3.5 à l'époque.) et je ne suis pas
la bonne personne pour en parler.

--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Jean-Yves F. Barbier
On Sat, 30 Apr 2011 16:07:17 +0200, Basile Starynkevitch
wrote:



Une question importante est de savoir qui va (au début, et surtout d ans
l'avenir) utiliser ce versionneur. Vas tu l'utiliser tout seul pour un
développement sur lequel tu es le seul à travailler?



Vi

Est-ce que les contributeurs futurs à ton développement logicie l seront
proches ou éloignés?



Les 2

Développes tu sous et pour Linux?



Vi, mais avec poss d'extension à d'autres OS (par contribs)

S'agit-il d'une application web?



Non

Est-ce un petit développement ex nihilo, ou bien pars tu d'un
logiciel source existant?



Ex-nihilo

S'agit-il de développer un logiciel libre?



Je ne sais pas encore (si c'est non, c'est parce que je souhaiterai exclure
toute organisation gouvernementale & afférente)

un logiciel qui pourrait plus tard être accédé voire modif ié (via le
versionneur) par une grosse communauté?



Non, tout au plus certains devs choisis

(Ainsi, même pour du développement propriétaire, on ne fai t pas les
mêmes choix de versionneurs dans une grosse multi nationale et dans
une toute petite PME)?



Plutôt une chtite PME

S'il y a d'autres développeurs actuellement sur ce projet, à qu els
versionneurs sont-ils habitués?



Non, pas avant une version 0.99

Quel est le volume prévisible des sources à versionner?



Tout au plus qq mégas (seulement du code en texte et qq icones/images (figées))

Est-ce que la connectivité est suffisante (par exemple,
accédera-t-on à ce versionneur depuis un autre continent?).



Oui (fibre)

Un autre point très important: il n'est pas du tout nécessaire de
maitriser la totalité des fonctionalités d'un versionneur pour
l'utiliser avec profit. Par exemple concret, je connais mal git, mais
je l'utilise avec satisfaction pour des petits développements
personnels (logiciels ou documentation), et je n'en comprends pas tout.
Le livre "Pragmatic Guide to Git" de Travis Swicegood me parait clair.



J'ai jeté un oeil, mais je n'ai pas trouvé comment revenir en AR sur un seul
fichier.

Enfin, il faut savoir que changer de versionneur pendant un
développement est une opération délicate (qui peut né cessiter
l'interdiction de l'accès aux sources versionnées pendant plus d'une
journée), et une telle migration doit être planifiée et te stée à
l'avance. Ainsi, le compilateur GCC a mis des années à passer d e CVS à
SVN.



C'est ben pour ça que je pose la question ici: j'ai lu quelques articl es sur
la toile et tous disent cela.

Il faut aussi savoir si on veut un versionnement centralisé (qui
convient probablement mieux à du logiciel propriétaire dév eloppé par
une équipe locale) ou un versionnement distribué.



C'est une pierre d'achoppement: pour certaines parties, je souhaite rester
seul maître de l'incorporation ou non des devs externes; mais pour d'a utres
(où je suis peu à l'aise) il est possible que certains pans soien t
entièrement externalisés.

Je te conseille donc git (surtout si tu veux un versionnement
distribué, mais je m'en sers aussi pour des projets où je suis tout
seul). La documentation complète est effectivement grosse, mais on e st
pas du tout obligé de la lire en entier. Je ne connais pas du tout l es
subtilités de git mais j'arrive à m'en servir sur des projets n eufs
(c'est probablement plus difficile de migrer vers git depuis autre
chose).



Comme dit plus haut et parce que je procède souvent par tâtonneme nts, je
dois-être en mesure de pouvoir revenir en AR d'une ou plusieurs versio ns
seulement sur certains fichiers, mais c'est justement ce que je n'ai pas
trouvé dans git.

Si tu voulais absoluement un versionnement centralisé (que je te
déconseille), tu pourrais prendre subversion.



Non, je ne pense pas (et puis, qui peut le plus peut le moins:)

Je ne te conseille pas bzr ni mercurial, mais je les connais très mal
et ne m'en sers que pour rapatrier du code source d'un logiciel libre
déposé ailleurs.



Mercurial semble encore plus abscon que git (mais testé il-y-a un cert ain
temps), quant'à Bazaar je ne connais pas mais il existe en tant que pa ckage.

Il existe des entreprises qui vendent le service de versionnement. L'un
des avantages, c'est ipso facto de constituer une sauvegarde à
distance. Par exemple http://myversioncontrol.com/ ou http://github.com/



Pour l'instant, non (j'ai la possibilité d'aller pêcher dans le s vr alimenté
en fibre à partir de chez moi, donc il est facile de faire un rsync r égulier.)

A priori je te conseille git, mais j'avoue l'utiliser avec satisfaction
sans en maitriser toutes facettes.



Je veux bien, mais à la condition exprimée ci-dessus.

--
Your analyst has you mixed up with another patient. Don't believe a
thing he tells you.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Charles Plessy
Le Sat, Apr 30, 2011 at 04:48:23PM +0200, Jean-Yves F. Barbier a écrit :

J'ai jeté un oeil, mais je n'ai pas trouvé comment revenir en AR sur un seul
fichier.



Bonjour,

je conseille aussi Git. Il est facile de récupérer une ancienne version d'un
fichier seulement, avec la commande « git checkout ».

http://stackoverflow.com/questions/692246/git-how-to-undo-changes-of-one-file

Pour les collègues sous windows, il y a Tortoise Git, qui est très pratique
et s'installe facilement.

http://code.google.com/p/tortoisegit/

Amicalement,

--
Charles Plessy
Illkirch-Graffenstaden, Alsace, France

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Jean-Yves F. Barbier
On Sat, 30 Apr 2011 23:58:12 +0900, Charles Plessy wrot e:

je conseille aussi Git. Il est facile de récupérer une ancienn e version d'un
fichier seulement, avec la commande « git checkout ».

http://stackoverflow.com/questions/692246/git-how-to-undo-changes-of-one- file



Merci pour le link, mais (et c'est ptêt bin là que je me trompe?! ) je souhaite
pouvoir revenir en AR d'un nombre _quelconque_ de révisions sur n'impo rte quel
fichier

Je tâtonne souvent et je crée des tas de versions différente s d'un fichier; à
la fin, soit le fichier final correspond à mes attentes, soit je pioch e dans
plusieurs pour obtenir le final - C'est toute cette chaîne que je souh aiterai
pouvoir sauvegarder (mais encore une fois, je me trompe ptêt: cette pa rtie
du dev est peut-être uniquement du ressort personnel et pas du systà ¨me de VCS?)

--
Marriage is an institution in which two undertake to become one, and one
undertakes to become nothing.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Bernard Schoenacker
Le Sat, 30 Apr 2011 17:21:03 +0200,
"Jean-Yves F. Barbier" a écrit :

On Sat, 30 Apr 2011 23:58:12 +0900, Charles Plessy
wrote:

> je conseille aussi Git. Il est facile de récupérer une ancienne
> version d'un fichier seulement, avec la commande « git checkout  ».
>
> http://stackoverflow.com/questions/692246/git-how-to-undo-changes-of-on e-file

Merci pour le link, mais (et c'est ptêt bin là que je me trompe?!) je
souhaite pouvoir revenir en AR d'un nombre _quelconque_ de révisions
sur n'importe quel fichier

Je tâtonne souvent et je crée des tas de versions différentes d'un
fichier; à la fin, soit le fichier final correspond à mes attentes,
soit je pioche dans plusieurs pour obtenir le final - C'est toute
cette chaîne que je souhaiterai pouvoir sauvegarder (mais encore une
fois, je me trompe ptêt: cette partie du dev est peut-être uniquement
du ressort personnel et pas du système de VCS?)





bonjour,


puisque ce doit être le bazard, voici le lien :

http://fr.wikipedia.org/wiki/Darcs
http://www.darcs.net/

slt
bernard

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Basile Starynkevitch
On Sat, 30 Apr 2011 17:21:03 +0200
"Jean-Yves F. Barbier" wrote:
Je tâtonne souvent et je crée des tas de versions différentes d'un fichier; à
la fin, soit le fichier final correspond à mes attentes, soit je pioche dans
plusieurs pour obtenir le final - C'est toute cette chaîne que je souha iterai
pouvoir sauvegarder (mais encore une fois, je me trompe ptêt: cette par tie
du dev est peut-être uniquement du ressort personnel et pas du systèm e de VCS?)




Les branches de GIT sont faites pour ça (et les tags aussi). On peut
vraiement en avoir beaucoup (même si personnellement je les utilise
peu). Donc il me semble que c'est ton point de vue qui pourrait
changer: tu pourrais raisonner non pas en termes de fichiers
individuels, mais en terme d'arborescence complète, et alors c'est
exactement ce que permet les branches de GIT (il parait que tu pourrais
en avoir des millions).

Moi au contraire, dans mes développements personnels (seulement), je ne
raisonne pas comme ça, et je reviens rarement en arrière (même si ça
peut m'arriver) et j'ai donc peu de branches. Par contre, pour un
développement communautaire, les branches me paraissent essentielles.

Mon impression sur GIT c'est que c'est un outil *très* puissant, et
qu'il y a plusieurs façons *très* différentes de s'en servir. A toi de
découvres quelle manière de l'utiliser correspond à tes besoins.

Par contre, GIT comme SVN raisonnent plutôt en terme de versionnement
d'une arborescence entière, pas de fichiers individuels (comme le
faisaient RCS ou CVS ou SCCS), et je crois que c'est un progrès
essentiel. Un fichier isolé a rarement du sens, il s'inscrit dans un
contexte qui est précisément l'arborescence manipulée.

Cordialement

PS. Il faut quand même noter que la notion de versionnement et de chose
versionnée varie sensiblement d'un versionneur à un autre. Les concepts
sont différents, et donc aussi la terminologie!

--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile<at>starynkevitch<dot>net mobile: +33 6 8501 2359
8, rue de la Faiencerie, 92340 Bourg La Reine, France
*** opinions {are only mine, sont seulement les miennes} ***

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Rémi Vanicat
"Jean-Yves F. Barbier" writes:

On Sat, 30 Apr 2011 23:58:12 +0900, Charles Plessy wrote:

je conseille aussi Git. Il est facile de récupérer une ancienne version d'un
fichier seulement, avec la commande « git checkout ».

http://stackoverflow.com/questions/692246/git-how-to-undo-changes-of-one-file



Merci pour le link, mais (et c'est ptêt bin là que je me trompe?!) je souhaite
pouvoir revenir en AR d'un nombre _quelconque_ de révisions sur n'importe quel
fichier



git checkout permet de revenir à n'importe qu'elle version du fichier:
$ git checkout commit -- file
récupère le fichier file dans la version ou il se trouvait à l'époque du
commit "commit" (on parle de commit avec git plus que de révisions).

En plus git possède des interfaces graphique comme gitk ou giggle qui
permette (entre autre) de ne regarder que les commits où un certain
fichier a évolué.


Je tâtonne souvent et je crée des tas de versions différentes d'un fichier; à
la fin, soit le fichier final correspond à mes attentes, soit je pioche dans
plusieurs pour obtenir le final - C'est toute cette chaîne que je souhaiterai
pouvoir sauvegarder (mais encore une fois, je me trompe ptêt: cette partie
du dev est peut-être uniquement du ressort personnel et pas du système
de VCS?)



git permet certainement de faire ça. Dans ce genre de cas ma méthode est
de faire 36 branches correspondants au différentes idée que j'ai pour
résoudre le problème, et je choisi celle qui me va à la fin, mais c'est
certainement pas la seul façon de faire.

--
Rémi Vanicat

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
Avatar
Jean-Yves F. Barbier
On Sat, 30 Apr 2011 17:48:00 +0200, Basile Starynkevitch
wrote:



On Sat, 30 Apr 2011 17:21:03 +0200
"Jean-Yves F. Barbier" wrote:
> Je tâtonne souvent et je crée des tas de versions différ entes d'un
> fichier; à la fin, soit le fichier final correspond à mes att entes, soit
> je pioche dans plusieurs pour obtenir le final - C'est toute cette cha îne
> que je souhaiterai pouvoir sauvegarder (mais encore une fois, je me tro mpe
> ptêt: cette partie du dev est peut-être uniquement du ressort personnel et
> pas du système de VCS?)
>

Les branches de GIT sont faites pour ça (et les tags aussi). On peut
vraiement en avoir beaucoup (même si personnellement je les utilise
peu). Donc il me semble que c'est ton point de vue qui pourrait
changer: tu pourrais raisonner non pas en termes de fichiers
individuels, mais en terme d'arborescence complète, et alors c'est
exactement ce que permet les branches de GIT (il parait que tu pourrais
en avoir des millions).



Le soucis c'est que je ne suis un programmeur pro, je cherche juste à créer le
pgm qui me manque afin qu'il soit exactement comme je veux, ce qui prend en
Gal pômal de temps (et explique les retours en AR.)
Ce que tu dis est malheureusement ce que j'avais compris lors de diffé rents
tests: tu est limité à toute l'arborescence, sans pouvoir descend re au niveau
fichier, à moins que de rétablir *toute* la branche antérieu re voulue - ce qui
ne correspond pas à mes attentes (juste un fichier par-ci par-là.)

--
"Take that, you hostile sons-of-bitches!"
-- James Coburn, in the finale of _The_President's_Analyst_

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Archive: http://lists.debian.org/
1 2 3