Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 14/03/2021, à 22:49

alex2423

Utilisez vous GIT ou autre pour vos scripts/projets perso ?

Hello tout le monde,

Je pense comme pas mal de monde ici, quand on a quelques connaissances en ligne de commande, en développement, on aime bien de temps en temps faire quelques scripts pour se faciliter la vie, automatiser des choses, et ....

Et depuis quelques temps, je travaille sur un script de récupération de podcas que je l'améliore au fur et à mesure. Je le développe et teste sur mon laptop pour plus de confort puis ensuite je le pousse sur mon raspberry en scp. 

Et je viens de penser, mais pourquoi pas pousser mes scripts sur un service de versionning comme GIT.

Je me fais la réflexion :
- je profite de la fonction de version. Cela permettrait de revoir ses modifs que l'on aurait oublié
- mais cela permet de centraliser ses scripts, de pouvoir les revoirs d'un clique

C'est vraiment du luxe, pas indispensable ...
Et vous, avez vous franchis le pas ? Vous être sur Gitlab ? Un autre service ? Installer sur votre serveur un service de versionning ?

Hors ligne

#2 Le 15/03/2021, à 00:43

Vobul

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

Ah ça oui pour utiliser git, je l'utilise.

Par exemple j'ai un repo ".dotfiles" où je mets mes fichiers de config, avec un script d'install qui crée les liens symboliques. Très utile quand tu changes une conf sur un ordi pour synchroniser sur un autre ordi. Vu que mes config sont toutes lourdement customisées, c'est difficile d'utiliser un programme avec les keybinding par défaut ! (zsh, tmux, git, vim, etc...). Utile aussi pour partager ma config avec un tiers.

J'ai aussi un repo pour ma config mutt. Et 64.000 autres repos pour tous mes projets de dev. Par contre j'ai pas gitifié mon ~/.bin. Mais si le script devient un  projet en soit, il va dans un dossier gitifié dans $dev (~/.dev) et je fais un ln -s vers le binaire/script dans ~/.bin (qui lui est dans le $PATH).

Bref, ne réfléchis pas, utilise git, c'est tellement pratique !

Dernière modification par Vobul (Le 15/03/2021, à 00:44)


Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne

#3 Le 15/03/2021, à 01:13

kamaris

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

+1, et il faut bien distinguer git des services distants qui l'utilisent.
Tu peux très bien faire du versioning en local, en sauvegardant à la main sur un disque externe.

Hors ligne

#4 Le 16/03/2021, à 21:45

alex2423

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

Nous avons 2 cas d'usage smile

Vobul, ah, un grand usager de GIT. smile Un dépot pour des fichiers de config, et ton script de création de lien symbolique. Je ne connais pas bien git, pourquoi n'as tu pas fait ton dépot local dans /home/vobul pour tes fichiers de conf de ton home (y compris mutt)?   

Et également plein d'autres dépots pour tes scripts, tes dev, ... par contre 64 000, je pense que c'était façon de parler.

Autant de répo, j'imagine que tu héberge dans ce cas ton propre GIT. J'ai regardé les différents services en ligne GIT et malheureusement les répo sont limité même si ils sont petits en volume.

kamaris, oui c'est que je fais déjà pour mes documents odt, je renomme le nom du fichier avec la date. Après c'est un peu laborieux, je le fais pour des documents importants.
Tu utilises également GIT ?


Bon je pense que vous m'avez convaincu, tout du moins de tester d'autant plus que j'ai découvert que Framasoft proposer une instance avec Framagit.
J'attends la validation du compte qui prendrait un peu de temps, jusqu'à 5jours.

Hors ligne

#5 Le 16/03/2021, à 22:02

kamaris

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

alex2423 a écrit :

kamaris, oui c'est que je fais déjà pour mes documents odt, je renomme le nom du fichier avec la date. Après c'est un peu laborieux, je le fais pour des documents importants.
Tu utilises également GIT ?

Oui j'utilise git, et je parlais bien de git quand je disais « faire du versioning en local, en sauvegardant à la main sur un disque externe » : c'est la sauvegarde qui est faite à la main, pas le versioning ! big_smile
J'ai par exemple mis un dépôt git dans mon ~/bin contrairement à Vobul, et je le sauvegarde (entre autres choses) sur un support externe régulièrement.
Pour ce qui est d'une utilisation distante de git, personnellement, je ne la pratique que pour les projets auxquels je contribue, donc via GitHub, Gitlab, etc.
Je ne ressens pas le besoin d'un hébergement distant pour mes propres affaires d'une manière générale, et je privilégie toujours les outils qui permettent de travailler en local.

Hors ligne

#6 Le 16/03/2021, à 22:59

Vobul

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

alex2423 a écrit :

Je ne connais pas bien git, pourquoi n'as tu pas fait ton dépot local dans /home/vobul pour tes fichiers de conf de ton home (y compris mutt)?

mutt est à part dans un repo privé car mes serveurs mails n'ont pas nécessairement à être publics.

et pas de .git dans le $HOME direct car trop de fichiers/dossiers à ignorer. C'est dans ~/.dotfiles et c'est très bien ainsi. Je ne vois pas l'utilité de versionner son home directement. (/etc par contre pourquoi pas).

Et j'utilise github et gitlab, tous les deux n'ont pas vraiment de limites et tu peux faire des privé/public comme tu le souhaites.


Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne

#7 Le 17/03/2021, à 09:14

Compte supprimé

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

Bonjour,
J'ai hésité à répondre à la question du titre de ce post, car  je n'utilise pas Git et ma position n'est pas défendable.
Pour un projet un peu long(c'est relatif, le plus long que j'ai écrit doit être le jeu space invenders), je me contente de mettre l'évolution des versions que je nomme progv1, progv2, ...., dans un même dossier.
Mais ce n'est pas une bonne pratique, j'en ai pleinement conscience.
Alors pourquoi je n'utilise pas git?
Je n'ai aucune excuse sinon qu'au moment où j'ai abordé git, je trouvais ça pas très intuitif et je n'en trouvais pas vraiment l'utilité au regard de ma pratique (loisir. Approche essentiellement ludique). Puis le temps est passé...
Cependant, je comblerais cette lacune car à terme je souhaiterai participer à des projets collectifs et partager sur un des réseaux sociaux mes codes.

#8 Le 17/03/2021, à 11:38

Vobul

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

@pseudofab : j'étais un peu comme toi, je n'y voyais pas vraiment l'intérêt, et puis ces commandes à taper pour commit.... Mais aujourd'hui je ne reviendrai en arrière pour rien au monde !

Et pour les commandes j'ai mis des aliases : déjà dans le .zshrc alias g='git'

Puis dans .gitconfig:

st = status -sb
    lol = log --graph --decorate --pretty=oneline --abbrev-commit
    lola = log --graph --decorate --pretty=oneline --abbrev-commit --all
    c = commit -a
    ch = checkout
    br = branch -v
    d = diff
    dd = diff --stat
    g = grep -I

Vobul
Utilisez le retour utilisable de commandes !!!
J'aime la langue française, mais je parle franglais, deal with it.
RTFM

Hors ligne

#9 Le 21/03/2021, à 09:59

alex2423

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

J'assimilais Git à l'obligation d'avoir un dépôt distant. Mais en effet après recherche, il est tout à fait possible de rester en local et de faire une sauvegarde dans un fichier avec la commande git bundle.

Par défaut, cela sauvegarde TOUT. Si l'on travaille sur un projet libre existant, on ne veut pas peut être que sauvegarder ses propres modifications, et non pas celles en provenances du dépot distant. Il faut alors filtrer

git bundle create backup_modif tag_local..master (en ayant au préalable tagger le premier commit) 

Et en effet je suis d'accord avec pseudofab, Git n'est pas très intuitif. Cela demande de se plonger dans la doc de GIT pour essayer de comprendre sa logique. Les alias permettent de simplifier les commandes mais cela ne fait tout de mon point de vue.
Git peut se révéler complexe, après il faut rester raisonnable dans les fonctionnalités que l'on souhaite utiliser. J'ai voulu faire dernièrement un commit sur un ancien commit pour les regrouper ensemble mais cela devient tout de suite complexe pour le faire, il faut utiliser la commande rebase je crois. Mais bon j'ai laissé tombé, j'ai fait un commit par dessus.

Pour ce qui est de la gestion des branches, je n'ai pas regardé non plus. Pour le moment, je reste sur la branche principal pour mon besoin. Je verrais par la suite si cela vaut le cout.

Je pense que l'on peut vite oublier les commandes, je vais certainement me faire un petit fichier d'aide des principales commandes que je mettrais dans mon path perso pour pouvoir y accéder de n'importe ou mon arborescence.

Hors ligne

#10 Le 21/03/2021, à 12:07

krodelabestiole

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

je suis globalement passé de github à gitlab au moment du rachat par microsoft.

repos privés pour mes projets persos (mes configs par ex.) et généralement publics pour les projets sur lesquels je bosse (sites web). en plus de ce point de vue l'intégration continue et les services github pages / gitlab pages sont extrêmement pratiques !
d'ailleurs l'accueil ubuntu-fr est maintenant sur gitlab pages.

c'est vrai que git est pas du tout intuitif, on voit bien que ça sort du cerveau génialement biscornu de linus torwald, mais à l'usage ça prend tout son sens.

Hors ligne

#11 Le 21/03/2021, à 14:25

kamaris

Re : Utilisez vous GIT ou autre pour vos scripts/projets perso ?

alex2423 a écrit :

J'assimilais Git à l'obligation d'avoir un dépôt distant. Mais en effet après recherche, il est tout à fait possible de rester en local et de faire une sauvegarde dans un fichier avec la commande git bundle.

Je n'ai jamais utilisé git bundle personnellement, je me contente de lancer mon rsync sur mon arborescence telle qu'elle est, avec en particulier ses dépôts Git.
J'ai plusieurs dizaines de clonages en local pour pouvoir faire de la recherche récursive avec grep sur des bases de code entières en cas de besoin, et ça ne me pose aucun problème au moment de la sauvegarde.
Peut-être la première a été un peu longue évidemment, mais après rsync fait son travail correctement et c'est rapide.

alex2423 a écrit :

J'ai voulu faire dernièrement un commit sur un ancien commit pour les regrouper ensemble mais cela devient tout de suite complexe pour le faire, il faut utiliser la commande rebase je crois. Mais bon j'ai laissé tombé, j'ai fait un commit par dessus.

Oui le mieux pour ce genre d'opérations est souvent d'utiliser git rebase -i et de se laisser guider :
* dans ce cas, tu peux faire git rebase -i HEAD~2 ;
* quand tu veux rebaser par rapport à une référence distante, c'est git rebase -i dépôt/branche-distante branche-locale, où branche-locale peut être omise si il s'agit de la branche de travail courante.
  Donc en pratique, ça donne souvent git rebase -i origin/master ou git rebase -i upstream/master.

alex2423 a écrit :

Pour ce qui est de la gestion des branches, je n'ai pas regardé non plus. Pour le moment, je reste sur la branche principal pour mon besoin. Je verrais par la suite si cela vaut le cout.

C'est plutôt mal smile. Il vaut mieux tout de suite créer une branche de travail différente de master et travailler dessus.
Pour cela, quand tu es sur master (ou autre ensuite), tu peux faire git checkout -b nouvelle-branche, entre autres possibilités : ça crée nouvelle-branche (comme copie de la branche courante) et ça te fait basculer dessus.

alex2423 a écrit :

Je pense que l'on peut vite oublier les commandes, je vais certainement me faire un petit fichier d'aide des principales commandes que je mettrais dans mon path perso pour pouvoir y accéder de n'importe ou mon arborescence.

Clairement, Git est une jungle. Et je ne te conseillerais même pas d'ouvrir le(s) (nombreux) manuel(s), dans un premier temps.
Essaie plutôt de préciser la question que tu te poses, mets la dans un moteur de recherche, et tu devrais très vite tomber sur une réponse dans stackoverflow et consorts.

Dernière modification par kamaris (Le 21/03/2021, à 14:26)

Hors ligne