Config Cheat Sheet - Docs
▻https://docs.gitea.io/fr-fr/config-cheat-sheet
Toutes les options de config de Gitea
migration de Gitlab à Gitea en cours...
Config Cheat Sheet - Docs
▻https://docs.gitea.io/fr-fr/config-cheat-sheet
Toutes les options de config de Gitea
migration de Gitlab à Gitea en cours...
The Best Git Workflow for Your Software Engineering Team | by Denny | Jan, 2022 | Better Programming
▻https://betterprogramming.pub/the-best-git-workflow-for-your-software-engineering-team-6cfec81d
Exemple d’utilisation de Git pour le développement / test / mise en production ("Git workflow")
#git #git_workflow #howto
Link Shell Extension
▻https://schinagl.priv.at/nt/hardlinkshellext/linkshellextension_fr.html
Un utilitaire Windows pour ajouter à l’explorateur de fichier la gestion des liens symboliques, liens physique, jonctions, points de montage.
Documentation FR très complète.
Nombreuses possibilités annexes : « copies intelligentes », clonages, « copies Delorean » pour gérer des historiques de modifications de répertoires...
A noter : la commande ln -s
de GitBash sous Windows ne permet pas de faire des liens symboliques « à la Linux/MacOS » mais uniquement une copie complète de la source. Il faut donc utiliser la commande Windows mklink
à la place.
Voir :
– ▻https://docs.microsoft.com/fr-fr/windows-server/administration/windows-commands/mklink : documentation de mklink
pour la création de liens symboliques en ligne de commande avec cmd.exe
– ▻https://stackoverflow.com/questions/18641864/git-bash-shell-fails-to-create-symbolic-links#comment53416744_2448245 pour l’utilisation de mklink
avec GitBash / MSYS (échapper les slashs et anti-slash).
Exemple pour créer un lien symbolique le_lien
qui pointe vers le répertoire IMG
:
cmd //c mklink //d le_lien .\\IMG
#Link_Shell_Extension #lien_symbolique #symlink #windows #utilitaire #gitbash #hard_link #jonction #copie_Delorean
ryangjchandler/orbit: A flat-file database driver for Eloquent.
▻https://github.com/ryangjchandler/orbit
Orbit is a flat-file driver for Laravel Eloquent. It allows you to replace your generic #database with real #files that you can manipulate using the methods you’re familiar with.
Orbit is a driver-based package, making it very easy to change the storage format of your data.
Out of the box, Orbit provides the following drivers:
– md -> Orbit\Drivers\Markdown
– json => Orbit\Drivers\Json
– yaml => Orbit\Drivers\Yaml
– md_json => Orbit\Drivers\MarkdownJson
Orbit comes with convenient #Git integration out of the box. This means that any changes made to your content can be automatically persisted back to your Git repository, keeping everything up-to-date.
Config Cheat Sheet - Docs
https://docs.gitea.io/en-us/config-cheat-sheet
La doc des options de configuration de Gitea
+ la doc de l’installation depuis un binaire : https://docs.gitea.io/en-us/install-from-binary
+ la doc de lancement en tant que service (systemctl) : https://docs.gitea.io/en-us/linux-service
Un assistant dopé à l’IA pour programmer un peu à notre place, avec OpenAI et entraîné sur des milliards de lignes de code par microsoft github. Et on dirait que ça marche : le codeur rédige un prototype de fonction et le commentaire qui décrit ce qu’elle fait (dans Visual Studio ...) et l’assistant rédige le code. Si on lui demande, il propose d’autres versions.
▻https://copilot.github.com
#programmation #IA #deep_learning #github #visualstudio #openAI #text_generation
Et on dirait que ça marche
: la remarque résume tout le problème des réseaux de neurones. Au jour d’aujourd’hui on ne sait pas prouver la correction des sorties par rapport aux entrées. Tant qu’on atteindra pas cet objectif (si tant est qu’il soit atteignable) il va être compliqué de faire confiance au code produit par ce zinzin.
Est-ce que tu peux expliciter ce que veut dire « prouver la correction des sorties par rapport aux entrées » ?
Pardon je me suis très mal exprimé. Je précise :
Qu’on est pas capable aujourd’hui d’avoir un modèle mathématique déterministe expliquant le pourquoi d’une solution plutôt que d’une autre. un réseau de neurones est une boîte noire. C’est bien pour ça que j’ai trouvé la remarque « on dirait que ça marche » particulièrement à propos.
Je ne suis pas très fan des systèmes n’ayant pas d’explicabilité.
Merci je comprends mieux :)
Si j’ai bien compris, c’est un autocomplete amélioré, et donc au pire on ignore les suggestions, et au mieux ça fait gagner du temps. Techniquement, c’est très utile à mon avis. Politiquement, ça implique d’envoyer tout le code, ainsi que toutes les mini-itérations (ajout/suppression de caractères, c’est à dire les hésitations des dévs), à github, ce qui leur permet d’entrainer leur modèle.
On dirait que ça fait plus, la démo est assez spectaculaire, mais c’est présenté à moitié comme simplement une alternative à la recherche sur internet et à l’écrémage des forums comme stackoverflow : « GitHub Copilot draws context from the code you’re working on, suggesting whole lines or entire functions. It helps you quickly discover alternative ways to solve problems, write tests, and explore new APIs without having to tediously tailor a search for answers on the internet. As you type, it adapts to the way you write code—to help you complete your work faster. » https://github.blog/2021-06-29-introducing-github-copilot-ai-pair-programmer
Je vais encore faire mon grognon :o)
Il y a un truc qui me gêne : le bidule est entraîné à partir de logiciels open source, puisque l’entraînement se fait à partir des déôts présents sur github, mais rien n’empêchera de s’en servir pour développer du logiciel propriétaire. Ça me chagrine un peu (doux euphémisme) que tout ce volume de connaissance issu du monde de l’open source puisse bénéficier au monde du logiciel propriétaire.
Ouaip, c’est une bonne question : quelle licence pour le code généré ? Si les données d’entrainement contiennent des sources GPL3, on peut imaginer que le code devrait être contaminé (le mot est moche, mais l’idée est belle) et donc publié en tant que GPL3 aussi.
J’imagine que la réponse de GitHub sera : c’est la responsabilité de la personne qui utilise la génération de code de s’en assurer, nous on ne fait que fournir un outil.
Oui rien de foncièrement nouveau c’est le même principe que… depuis que la GPL existe, ou des sites comme stackoverflow : il est évident que des gens codant des logiciels privateurs peuvent lire du code de bibliothèques existantes en libre et les forums d’entraide et s’en inspirer pour leur code/architecture. Vu que leur logiciel est par nature une boite noire, ça n’arrive quasiment jamais de savoir si c’est repiqué tel quel ou adapté. Là c’est pareil mais directement depuis l’éditeur de code. Mais comme d’hab ce qui est nouveau c’est l’échelle, l’ampleur, de l’aspiration automatique.
Sachant que Microsoft indexe le web via Bing, ils disposent d’un bon corpus, mais ont-ils le droit de l’utiliser ?
@severo bonne question, quelle licence s’applique ?
En France (si mes connaissances ne sont pas obsolètes) le droit d’auteur s’applique. Donc si le logiciel copie du code il pourrait exposer le développeur à des poursuites en justice.
Certains codes sont en effet reproduits avec les commentaires, même lorsqu’ils contiennent des jurons.
Voici une analyse de la qualité du code produit (et ça aborde la question du « faire use » qui permet d’ignorer la licence) ▻https://gist.github.com/0xabad1dea/be18e11beb2e12433d93475d72016902
Une analyse légale, selon que le code ingurgité est sur github ou non, et qui porte aussi sur les licences : ▻https://fossa.com/blog/analyzing-legal-implications-github-copilot
#licence #opensource #gpl #copilot
La FSF maintenant lance une enquête et un appel à contribution sur le sujet des aspects philosophiques et légaux de Copilot :
▻https://www.fsf.org/blogs/licensing/fsf-funded-call-for-white-papers-on-philosophical-and-legal-questions-around-co
#IA #copilot #foss #fsf #github #opensource
Git reset : rien ne se perd, tout se transforme • Delicious Insights
▻https://delicious-insights.com/fr/articles/git-reset
Git reset expliqué en détails
Voir aussi : ►https://git-scm.com/book/fr/v2/Utilitaires-Git-Reset-d%C3%A9mystifi%C3%A9
Hosting SQLite databases on Github Pages (or any static file hoster) - Apr 17, 2021
I was writing a tiny website to display statistics of how much sponsored content a Youtube creator has over time when I noticed that I often write a small tool as a website that queries some data from a database and then displays it in a graph, a table, or similar. But if you want to use a database, you either need to write a backend (which you then need to host and maintain forever) or download the whole dataset into the browser (which is not so great when the dataset is more than 10MB).
In the past when I’ve used a backend server for these small side projects at some point some external API goes down or a key expires or I forget about the backend and stop paying for whatever VPS it was on. Then when I revisit it years later, I’m annoyed that it’s gone and curse myself for relying on an external service - or on myself caring over a longer period of time.
Hosting a static website is much easier than a “real” server - there’s many free and reliable options (like GitHub, GitLab Pages, Netlify, etc), and it scales to basically infinity without any effort.
So I wrote a tool to be able to use a real SQL database in a statically hosted website. Here’s a demo using the World Development Indicators dataset - a dataset with 6 tables and over 8 million rows (670 MiByte total).
...
– article ▻https://github.com/phiresky/sql.js-httpvfs
– lib ▻https://phiresky.github.io/blog/2021/hosting-sqlite-databases-on-github-pages
Débuter avec Git partie 7 : git rebase pour ré-écrire son historique
▻https://carlchenet.com/debuter-avec-git-partie-7-git-rebase-pour-re-ecrire-son-historique
La réorganisation/réécriture de commits avec la commande git rebase
et l’utilisation de l’option –force-with-lease
de git push
(...et git rebase –abort
pour les cas où ça dégénère !)
Article intégré dans une série « pédagogique » sur Git : ▻https://carlchenet.com/category/debuter-avec-git
Getting The Most Out Of Git — Smashing Magazine
▻https://www.smashingmagazine.com/2021/02/getting-the-most-out-of-git
Staging Selected Parts of Your Changed Files
Luckily, Git allows us to precisely select the chunks we want to put into the next commit! All we have to do is add the -p flag to our git add command:
git add -p imprint.html
Une astuce pour #git que je ne connaissais pas, nice :)
Merge Pull Requests without Merge Commits | Shing’s Blog
▻https://shinglyu.com/web/2018/03/25/merge-pull-requests-without-merge-commits.html
git checkout new-feature # Go to the feature branch named "new-feature"
git rebase master
# Now your feature have all the commits from master
git checkout master # Go back to master
git merge --ff-only new-feature
#git
Démarrer rapidement et facilement un projet avec un script
Et si vous aviez un #script pour faire le boulot ? Un script qui pourrait vous générer un projet prêt à démarrer, et ce en quelques instants, avec uniquement des interventions de votre part au début pour répondre à des questions basiques ?
▻https://darklg.me/demarrer-rapidement-et-facilement-un-projet-avec-un-script
Mes 1ers tests par ici avec mon boilerplate #SPIP : ▻https://gitlab.com/jmoupah/zcm-installer
Couplé à #SPIP-CLI / #Checkout, ça commence à causer :)
SPIP-CLI : ►https://contrib.spip.net/SPIP-Cli
Checkout : ▻https://git.spip.net/spip-contrib-outils/checkout
#git #developpement #bash #outil
c’est en gros ce que fait l’installeur de IntéGraal qui est uniquement en spip-cli :
▻https://git.spip.net/spip-contrib-outils/spip-cli/src/branch/master/src/Command/IntegraalGenerer.php
Sachant qu’en spip-cli, enfin avec le module Console de Sf quoi, une fois qu’on a fait des commandes unitaires pour ci ou ça, on peut aussi faire des commandes qui appelle d’autres commandes.
Moi je fais donc tout en PHP/spip-cli/Console, vu que c’est bien plus simple à coder, propre, beau avec des couleurs, tableaux, barre de défilement, etc, sans avoir à coder en Bash.
Pour spip-cli, par contre, hors commandes de base, ça va chercher que les commandes qui sont dans des plugins activés, d’où le fait que pour l’instant celle pour IntéGraal est dans le socle commun, sinon on peut pas l’utiliser.
Ce qu’on pourrait imaginer c’est que spip-cli cherche aussi au moins les commandes placées dans un dossier « spip-cli » à la racine du dossier où on le lance et/ou à la racine du spip (pas juste les plugins activés).
Pour l’instant, mes besoins sont rudimentaires, donc bash me va bien :)
Ce que ça fait :
– crée la base mySQL pour installer SPIP via spip-cli
– crée les dossiers plugins et auto (désactivable)
– clone ZCM
– édite paquet.xml avec le préfixe du plugin
– renomme les fichiers options/fonctions/zcm-xx.svg avec le préfixe du plugin
– commit le tout dans un repo du nom du préfixe préalablement créé (désactivable)
Et donc les commandes :
– télécharger SPIP spip dl --branche master
– initialiser ZCM Intaller zcminstaller
(créer à minima la base de données)
– installer SPIP spip core:installer --db-server "mysql" --db-login "login" --db-pass "motdepasse" --db-database "nomdelabase" --admin-nom "nom" --admin-login "login" --admin-email "mail@domaine.net" --admin-pass "motdepasse"
– ajouter le dépôt des plugins spip plugins:svp:depoter https://plugins.spip.net/depots/principal.xml
La seule chose que je n’arrive pas à faire via SPIP Cli, c’est installer mon plugin car ça ne gère pas les dépendances (téléchargement et installation). Ou alors, je rate une commande ?
Vous savez, ces insupportables bandeaux cookies trompeurs, mensongers et agaçants que des tas de sites Web affichent ? Microsoft a une excellente solution à ce problème : pas de cookies, donc pas de bandeau cookie.
▻https://github.blog/2020-12-17-no-cookie-for-you
Il faut maintenant espérer (mais ne rêvons pas) que les médias français, tous grands capteurs de données personnelles sur leurs sites Web, suivent cette multinationale étatsunienne sur le chemin de la vertu.
Comment la Chine traque et emprisonne les journalistes citoyens qui racontaient le confinement de Wuhan
►https://www.lemonde.fr/international/article/2020/12/01/coronavirus-comment-la-chine-traque-les-citoyens-enqueteurs_6061721_3210.htm
Au moins une demi-douzaine de personnes ont été arrêtées. Cette vague de répression révèle la paranoïa de Pékin vis-à-vis de toute version non conforme à la vérité officielle sur le Covid-19. Ils en avaient fait leur passion : archiver sur un système hébergé à l’étranger, la plate-forme américaine GitHub, les contenus – articles de presse ou de réseaux sociaux – qui disparaissent de la Toile chinoise à chaque razzia de la censure. Jamais les autorités n’ont semblé prêter attention à leurs activités, jusqu’à ce (...)
#GitHub #WeChat #activisme #journalisme #censure #COVID-19 #santé #surveillance
##santé
Nous recrutons un(e) ingénieur R&D Labs (H/F) en #CDI ▻https://www.afnic.fr/fr/l-afnic-en-bref/recrutement/offres-d-emploi/ingenieur-r-d-labs-h-f-cdi-6.html #Afnic #Recrutement #Offre #emploi #Jobs #DNS #IPv6 #GitLab #MachineLearning
Des explications sur : ▻https://docs.radicle.xyz/docs/understanding-radicle/why-radicle
En raccourci :
But :
In a world where nearly all software relies on open source code, maintaining the resilience and health of the free and open source ecosystem is more important than ever. That’s why we believe that dependence on centrally hosted platforms and corporations for the distribution of critical open source infrastructure is unsustainable. Reliance on such centralized services contradicts the values of the free and open source ecosystem and threatens its well-being.
Principes :
Designing by principles
As we set out to build an alternative, we started by thinking about the values that we recognize as integral to free and open source code collaboration. With that said, we developed the following list of guiding principles:
1. It must prioritize user freedom In the words of the free software movement
2. It must be accessible and uncensorable
3. It must be user-friendly
4. It must be offline-first
5. It must not compromise on security
Fonctionnement :
Radicle’s approach is meant to return to the protocol-first philosophy by focusing on building code collaboration primitives instead of user experiences, and to reject data collection and siloing by intermediaries. This is reflected in the decision to build on and extend git. Having it as the nexus of replication builds on its strengths and decentralized nature. Having issues, pull requests, comments, and reviews locally gives developers the tools to manage and design their workflows without locking them into a new “experience”. Despite any front-end interface that will be built (😉), Radicle exists foremost as an open protocol — not a platform.
Pour le « comment ça marche » : ▻https://docs.radicle.xyz/docs/understanding-radicle/how-it-works
#développement #collaboratif #protocole #github #gitlab #bazaar
Oh Shit, Git !?!
▻https://ohshitgit.com/fr
compilation d’astuces Git pour se sortir de situation foireuses...
chronoxor/gil: Gil is a git links tool to manage complex git repositories dependencies with cycles and cross references
▻https://github.com/chronoxor/gil
Gil is a git links tool to manage complex git repositories dependencies with cycles and cross references.
This tool provides a solution to the git recursive submodules dependency problem.
En rentrant dans de prestigieuses bibliothèques, le logiciel libre gagne ses lettres de noblesse
▻https://www.lemonde.fr/economie/article/2020/11/19/en-rentrant-dans-de-prestigieuses-bibliotheques-le-logiciel-libre-gagne-ses-
L’entreprise américaine GitHub, propriété de Microsoft, sauvegarde des millions de lignes de langage informatique, qui vont être accueillies dans les bibliothèques d’Alexandrie, d’Oxford et de Stanford. Véritables temples du savoir, les bibliothèques d’Alexandrie (Egypte), d’Oxford (Royaume-Uni) et de Stanford (Etats-Unis) abritent parmi les écrits les plus précieux de l’humanité, jusqu’aux plus anciens. Mais c’est un véritable bond dans la modernité qu’elles viennent d’effectuer. A l’invitation de (...)
GitHub Archive Program | Preserving open source software for future generations
▻https://archiveprogram.github.com
The world is powered by open source software. It is a hidden cornerstone of modern civilization, and the shared heritage of all humanity. The GitHub Archive Program is a testament to the importance of the open source community. It is our hope that it will, both now and in the future, further publicize the worldwide open source movement ; contribute to greater adoption of open source and open data policies worldwide ; and encourage long-term (...)
Oh My Zsh - a delightful & open source framework for Zsh
▻https://ohmyz.sh
Oh My Zsh is an open source, community-driven framework for managing your Zsh configuration.
Les plugins de ohmyzsh sont disponibles sur : ▻https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins
et en particulier celui pour git : ▻https://github.com/ohmyzsh/ohmyzsh/tree/master/plugins/git
La clé privée du système de #DRM #Widevine (utilisé notamment par Netflix et le service VOD d’Apple) a fuité. Google (propriétaire du système en question) essaie de boucher les trous, mais, sur Internet, il est difficile de « défuiter » une information.
La requête DMCA de Google à Github pour demander la censure des dépôts où se trouvait la clé (et le code)
▻https://github.com/github/dmca/blob/master/2020/11/2020-11-09-Google.md
Un résumé de l’affaire : ▻https://torrentfreak.com/google-takes-down-repositories-that-circumvent-its-widevine-drm-201113
Le site Web officiel ▻https://www.widevine.com
Google (propriétaire du système en question) essaie de boucher les trous, mais, sur Internet, il est difficile de « défuiter » une information.
Github ne semble pas se donner beaucoup de mal pour aider ce pôv Google à « défuiter » : parmi la 60aine de forks présents sur ▻https://github.com/tomer8007/widevine-l3-decryptor/network/members il en reste un bon nombre encore actifs...
Dans le même ordre d’idée : le repo git de Youtube-dl (►https://github.com/ytdl-org/youtube-dl) est lui aussi fermé : ▻https://torrentfreak.com/riaa-takes-down-popular-open-source-youtube-dl-software-201024
(et idem, une copie est toujours disponible sur Gitlab...)
On #undoing, fixing, or removing commits in #git
▻https://sethrobertson.github.io/GitFixUm/fixup.html
This document is an attempt to be a fairly comprehensive guide to recovering from what you did not mean to do when using git. It isn’t that git is so complicated that you need a large document to take care of your particular problem, it is more that the set of things that you might have done is so large that different techniques are needed depending on exactly what you have done and what you want to have happen.
ctrl+z :p
#ýoutube-dl est un logiciel libre permettant de télécharger des vidéos depuis plusieurs plateformes de distribution (pas seulement #YouTube). Il était distribué à partir de la plateforme de développement de logiciels #GitHub (le Facebook des geeks), propriété de #Microsoft. Il vient d’être retiré, sans discussion et sans possibilité pour l’auteur de se défendre (à la cow-boy, comme souvent aux États-Unis) suite à une demande #DMCA de la #RIAA, le lobby d’Hollywood.
L’ancien dépôt : ►https://github.com/ytdl-org/youtube-dl
La lettre de la RIAA : ▻https://github.com/github/dmca/blob/master/2020/10/2020-10-23-RIAA.md
L’article de TechCrunch : ▻https://techcrunch.com/2020/10/23/the-riaa-is-coming-for-the-youtube-downloaders
Celui de ZDnet : ▻https://www.zdnet.com/article/riaa-blitz-takes-down-18-github-projects-used-for-downloading-youtube-videos
Un miroir (assez chargé en ce moment mais je pense que d’autres apparaitront) : ▻https://git.rip/mirror/youtube-dl
Leçons à en tirer :
– ne pas utiliser comme plate-forme de développement un truc étatsunien centralisé aux ordres de la RIAA
– tout migrer vers, par exemple, un Gitlab ▻https://www.bortzmeyer.org/github-to-gitlab.html
Une liste de miroirs plus détaillée : ▻https://docs.nixnet.services/Mirror_lists
@fil : dans la même veine : « Music industry forces widely used journalist tool offline » ▻https://freedom.press/news/riaa-github-youtube-dl-journalist-tool