<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Forum du club des développeurs et IT Pro - GIT</title>
		<link>https://www.developpez.net/forums/</link>
		<description><![CDATA[Description : forum d'entraide sur l'outil de gestion de sources décentralisée (Distributed Version Control System): GIT.]]></description>
		<language>fr</language>
		<lastBuildDate>Thu, 30 Jul 2026 12:27:21 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>15</ttl>
		<image>
			<url>https://forum.developpez.be/images/misc/rss.png</url>
			<title>Forum du club des développeurs et IT Pro - GIT</title>
			<link>https://www.developpez.net/forums/</link>
		</image>
		<item>
			<title>Le système de gestion de versions distribué Git 2.55 est disponible</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2184483&amp;goto=newpost</link>
			<pubDate>Fri, 03 Jul 2026 08:59:12 GMT</pubDate>
			<description>*Le système de gestion de...</description>
			<content:encoded><![CDATA[<div><b><font size="4">Le système de gestion de versions distribué Git 2.55 est disponible, ajoutant l'écriture MIDX incrémentielle, la correction de l'historique et la prise en charge de fsmonitor sous Linux</font></b><br />
<br />
<b>Git 2.55 a été publié avec une mise à jour majeure de la gestion des dépôts grâce à l’écriture incrémentielle d’index multi-packs. Activée avec la commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git repack --write-midx=incremental</span>, cette fonctionnalité permet à Git d’ajouter de nouvelles couches d’index pour les packs nouvellement créés au lieu de réécrire l’intégralité du fichier MIDX. La commande expérimentale <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git history</span> bénéficie également d’une nouvelle sous-commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">fixup</span>, permettant aux utilisateurs d’intégrer les modifications mises en attente dans un commit antérieur et de réappliquer les commits ultérieurs par-dessus. Git 2.55 améliore également le flux de travail et les performances dans plusieurs domaines.</b><br />
<br />
Git est un système logiciel de contrôle de version distribué capable de gérer les versions de code source ou de données. Il est souvent utilisé pour contrôler le code source par des programmeurs qui développent des logiciels en collaboration. Il a été créé à l’origine par Linus Torvalds pour le contrôle de version dans le cadre du développement du noyau Linux. Les objectifs de conception de Git incluent la vitesse, l’intégrité des données et la prise en charge de flux de travail distribués et non linéaires — des milliers de branches parallèles s’exécutant sur différents ordinateurs.<br />
<br />
Git est le système de contrôle de version le plus couramment utilisé par les développeurs de logiciels. Il s’agit du système de contrôle de version distribué le plus populaire, près de 95 % des développeurs le désignant comme leur principal système de contrôle de version en 2022. C’est l’outil de gestion de code source le plus largement utilisé parmi les développeurs professionnels. Plusieurs plateformes de développement proposent des services de dépôts Git, notamment GitHub, SourceForge, Bitbucket et GitLab.<br />
<br />
Récemment, Git 2.55 a été publié avec une mise à jour majeure de la gestion des dépôts grâce à l’écriture incrémentielle d’index multi-packs. Activée avec la commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git repack --write-midx=incremental</span>, cette fonctionnalité permet à Git d’ajouter de nouvelles couches d’index pour les packs nouvellement créés au lieu de réécrire l’intégralité du fichier MIDX. Lorsqu’elle est combinée au reconditionnement géométrique, Git peut utiliser une compaction basée uniquement sur les métadonnées pour maintenir l’efficacité des chaînes MIDX, en compactant les couches en fonction de <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">repack.midxSplitFactor</span> et en conservant une croissance logarithmique par rapport à la taille du dépôt.<br />
<br />
La commande expérimentale <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git history</span> bénéficie également d’une nouvelle sous-commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">fixup</span>, permettant aux utilisateurs d’intégrer les modifications mises en attente dans un commit antérieur et de réappliquer les commits ultérieurs par-dessus. Cela facilite la modification d’anciens commits sans avoir à créer manuellement des commits de correction ni à exécuter un rebase `autosquash`. La commande reste prudente : elle nécessite un arbre de travail et s’interrompt en cas de conflits.<br />
<br />
Git 2.55 améliore également le flux de travail et les performances dans plusieurs domaines. Les hooks basés sur la configuration peuvent désormais s’exécuter en parallèle lorsqu’ils sont activés, tandis que les hooks qui dépendent d’un état partagé continuent de s’exécuter en série. La génération du bitmap d’accessibilité est plus rapide : un benchmark sur un grand dépôt est passé d’environ 612 secondes à 294 secondes. De plus, Linux prend désormais en charge le moniteur de système de fichiers intégré à Git via <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">inotify</span>, ce qui contribue à accélérer des commandes telles que <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git status</span> lorsque les limites de surveillance du système sont suffisantes.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p677331d1783071374/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/1.jpg/" border="0" alt="Nom : 1.jpg
Affichages : 730
Taille : 16,3 Ko"  style="float: CONFIG" /></div><br />
Voici un extrait de l'annonce de Git 2.55 :<br />
<br />
<b><font size="3">Les points forts de Git 2.55</font></b><br />
<br />
Le projet open source Git vient de publier la version 2.55 de Git, qui intègre des fonctionnalités et des corrections de bogues apportées par plus de 100 contributeurs, dont 33 nouveaux. Notre dernier point sur les nouveautés de Git remonte à la sortie de la version 2.54.<br />
<br />
Pour célébrer cette toute dernière version, voici un tour d’horizon proposé par GitHub des fonctionnalités et modifications les plus intéressantes introduites depuis la dernière mise à jour.<br />
<br />
<b>Recompression avec des index multi-pack incrémentiels</b><br />
<br />
Les lecteurs fidèles de cette série se souviendront peut-être de nos articles consacrés aux index multi-pack incrémentiels et aux bitmaps d’accessibilité multi-pack incrémentiels. Au cas où vous auriez besoin d’un petit rappel, en voici un résumé.<br />
<br />
Git stocke le contenu de votre dépôt sous forme d’objets individuels : commits, arborescences et blobs. Ces objets se trouvent généralement dans des fichiers pack, qui sont des collections compressées d’objets. À chaque fichier pack correspond un index de pack qui permet à Git de localiser rapidement n’importe quel objet à l’intérieur du pack. Mais les dépôts volumineux ne comportent généralement pas un seul fichier pack : au fil du temps, les opérations de récupération, de push, les tâches de maintenance et les reconditionnements peuvent laisser derrière eux de nombreux packs.<br />
<br />
Un index multi-pack (ou MIDX) fournit à Git un index unique couvrant plusieurs packs. Au lieu d’ouvrir et de rechercher l’index individuel de chaque pack, Git peut interroger le MIDX pour savoir quel pack contient un objet donné et à quel offset. Cela s’avère particulièrement utile pour les dépôts volumineux, et c’est l’un des piliers de la stratégie de maintenance des dépôts de GitHub.<br />
<br />
Comme nous l’avons vu lors de l’introduction du format MIDX incrémental dans Git 2.47, un dépôt peut stocker son MIDX sous la forme d’une chaîne de couches plutôt que sous la forme d’un MIDX unique couvrant tous les packs. Un MIDX à fichier unique est simple et efficace à lire, mais il présente un coût de maintenance important ; comme ce fichier inclut tous les packs qu’il couvre, même une petite mise à jour peut nécessiter une écriture volumineuse dans un dépôt déjà volumineux.<br />
<br />
Les MIDX incrémentiels résolvent ce problème en stockant une chaîne de couches MIDX. Chaque couche couvre un ensemble de packs, et le fichier de la chaîne enregistre l’ordre de ces couches. L’ajout d’une nouvelle couche à l’extrémité de la chaîne n’invalide pas les couches plus anciennes ; Git peut ainsi indexer les packs nouvellement créés sans réécrire un fichier MIDX unique couvrant l’intégralité du dépôt.<br />
<br />
Git 2.55 apprend à la commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git repack</span> à écrire directement ces chaînes MIDX incrémentielles :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">$ git repack --write-midx=incremental</code><hr />
</div><br />
<br />
Sans aucune autre option, ce mode est en écriture seule : Git écrit une nouvelle couche pour les paquets créés par le repack et laisse les couches existantes telles quelles. Cela s’avère déjà utile lorsque vous souhaitez minimiser la quantité de métadonnées réécrites lors d’une opération de maintenance.<br />
<br />
Mais une chaîne en ajout seul ne peut pas s’allonger indéfiniment. Si chaque opération de maintenance ajoute une nouvelle couche, la chaîne elle-même finit par devenir ce que vous devez maintenir. Git 2.55 prend également en charge la combinaison de l’option <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">--write-midx=incremental</span> avec le reconditionnement géométrique :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">$ git repack --write-midx=incremental --geometric=2 -d</code><hr />
</div><br />
<br />
Lorsque ces modes sont utilisés conjointement, chaque repack crée une nouvelle couche d’extrémité, puis détermine si les couches adjacentes doivent être compactées ensemble. La règle par défaut est contrôlée par <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">repack.midxSplitFactor</span> : si le nombre cumulé d’objets dans les couches les plus récentes devient suffisamment important par rapport à la couche immédiatement antérieure, Git fusionne ces couches en une seule couche de remplacement. Sinon, les couches plus anciennes restent inchangées.<br />
<br />
À un niveau général, l’algorithme fonctionne comme suit. Ci-dessous, N désigne la valeur de <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">repack.midxNewLayerThreshold</span>, et f  désigne la valeur de <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">repack.midxSplitFactor</span> :<br />
<br />
1. Sélectionnez les paquets non MIDX comme candidats au reconditionnement géométrique. Si la couche MIDX de pointe comporte au moins N  paquets, incluez-les également parmi les candidats.<br />
<br />
2. Appliquez la règle habituelle de regroupement géométrique à cet ensemble de candidats, puis écrivez une nouvelle couche MIDX de pointe couvrant les paquets obtenus.<br />
<br />
3. Compactez les couches MIDX adjacentes lorsque le nombre cumulé d’objets de la ou des couches les plus récentes dépasse 1/f du nombre d’objets de la couche immédiatement plus profonde.<br />
<br />
Pour comprendre comment les éléments s’articulent, prenons l’exemple d’un référentiel disposant déjà d’une chaîne MIDX incrémentielle. Les couches les plus anciennes se trouvent à gauche, et la couche d’extrémité à droite. Parallèlement, l’activité normale du référentiel continue de produire de nouveaux paquets. Ces paquets ne sont encore couverts par aucune couche MIDX, ce qui signifie que la prochaine opération de maintenance comporte deux tâches : déterminer ce qu’il faut réorganiser, et décider quelle partie de la chaîne MIDX doit être réécrite.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p677332d1783071380/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/2.jpg/" border="0" alt="Nom : 2.jpg
Affichages : 678
Taille : 24,8 Ko"  style="float: CONFIG" /></div><br />
En règle générale, ces packs non couverts par MIDX sont les seuls candidats au reconditionnement géométrique : Git peut écrire un nouveau pack et une nouvelle couche MIDX d’extrémité sans perturber aucune couche existante. La figure ci-dessous illustre le cas le plus intéressant, où la couche d’extrémité actuelle a accumulé suffisamment de packs pour atteindre le seuil configuré <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">repack.midxNewLayerThreshold</span>. Une fois ce seuil atteint, les packs de la couche d’extrémité peuvent rejoindre les packs nouvellement écrits en tant que candidats au reconditionnement géométrique.<br />
<br />
Le « repacking géométrique » pose alors une question locale concernant les nouveaux paquets candidats. Le « repacking géométrique » pose alors une question locale concernant les nouveaux paquets candidats : le paquet situé immédiatement à gauche d’un suffixe de paquets (P) est-il suffisamment grand pour préserver la progression géométrique si Git regroupe &#119979; ? Dans la première tentative ci-dessous, &#119979; contient le plus petit pack de la couche de pointe actuelle ainsi que les nouveaux packs non traités par MIDX. Mais le pack situé à gauche de la scission ne contient que 30 000 objets, ce qui est inférieur au double de la taille de <br />
&#119979; ; cette scission est donc trop décalée vers la droite.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p677333d1783071384/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/3.jpg/" border="0" alt="Nom : 3.jpg
Affichages : 680
Taille : 38,4 Ko"  style="float: CONFIG" /></div><br />
Git déplace donc la division d’un pack en amont et repose la même question. Désormais, &#119979; inclut un pack supplémentaire provenant de la couche de pointe. Le pack situé immédiatement à gauche contient 100 000 objets, soit au moins deux fois la taille du suffixe sélectionné. C’est à ce moment-là que l’invariant géométrique s’applique, ce qui permet à Git de regrouper précisément ces packs dans un nouveau pack.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p677334d1783071389/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/4.jpg/" border="0" alt="Nom : 4.jpg
Affichages : 687
Taille : 36,2 Ko"  style="float: CONFIG" /></div><br />
Après avoir écrit ce nouveau pack, Git écrit une nouvelle couche MIDX de pointe par-dessus le pack survivant de la couche de pointe précédente et le pack regroupé nouvellement écrit. À ce stade, les fichiers de pack sont en bon état, mais la chaîne MIDX peut encore avoir accumulé trop de petites couches adjacentes. Git applique le même principe « le plus récent par rapport à l’ancien » aux couches MIDX elles-mêmes : si la couche la plus récente est suffisamment grande par rapport à sa voisine, il compacte leurs métadonnées en une couche de remplacement.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p677335d1783071394/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/5.jpg/" border="0" alt="Nom : 5.jpg
Affichages : 667
Taille : 47,4 Ko"  style="float: CONFIG" /></div><br />
Cette étape de compactage concerne délibérément uniquement les métadonnées. Git ne reconditionne pas les objets de ces couches ; il écrit une nouvelle couche MIDX qui couvre les mêmes fichiers pack. Il examine ensuite la couche immédiatement antérieure. Ici, la couche compactée est encore plus petite que la moitié de la couche plus profonde, donc Git s’arrête. La couche plus ancienne reste intacte, ce qui est la propriété clé qui permet à cette maintenance de rester incrémentielle.<br />
<br />
<div style="text-align: center;"><img src="https://www.developpez.net/forums/attachments/p677336d1783071399/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/6.jpg/" border="0" alt="Nom : 6.jpg
Affichages : 667
Taille : 57,4 Ko"  style="float: CONFIG" /></div><br />
Le résultat est un compromis entre deux extrêmes. Un fichier MIDX unique minimise la complexité des recherches, mais peut nécessiter d’importantes réécritures lors de la maintenance. Un MIDX incrémental purement « en ajout seul » minimise chaque écriture mais permet à la chaîne de s’allonger sans limite. Le reconditionnement incrémental géométrique maintient le nombre de couches à un niveau logarithmique par rapport au nombre total d’objets, tout en garantissant que les couches les plus récentes et les plus petites soient réécrites plus souvent que les plus anciennes et les plus volumineuses.<br />
<br />
Ce mécanisme s’intègre également au système de reconditionnement existant de Git. Les paquets nouvellement écrits qui ne sont pas encore couverts par la chaîne MIDX sont toujours candidats au reconditionnement géométrique ; les paquets situés dans les couches MIDX plus profondes ne sont pas modifiés. Les paquets de la couche MIDX de pointe ne rejoignent l’ensemble des candidats qu’une fois que cette couche contient au moins <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">repack.midxNewLayerThreshold</span> paquets. Si la couche de pointe est encore inférieure à ce seuil, Git évite complètement de la modifier et se contente d’ajouter une nouvelle couche pour les paquets nouvellement écrits.<br />
<br />
Pour les dépôts qui reçoivent un flux constant de nouveaux objets, cela signifie que la maintenance de routine peut mettre à jour les métadonnées des paquets du dépôt de manière incrémentielle, sans obliger chaque opération de maintenance à réécrire un seul MIDX couvrant l’ensemble du magasin d’objets.<br />
<br />
<b>Corriger des commits antérieurs avec <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git history</span>:</b><br />
<br />
Quiconque a déjà peaufiné une série de commits avant de la soumettre à révision a probablement déjà vécu cette situation : vous remarquez qu’une modification dans votre arborescence de travail appartient en réalité à un commit antérieur, et non à l’extrémité de la branche.<br />
<br />
Aujourd’hui, une méthode courante pour gérer cela consiste à créer un commit de correction (fixup), puis à l’autosquasher :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code"><table cellspacing="0" cellpadding="0"><tr><td valign="top" width="26"><div style="border: 1px dashed gray; padding-left: 5px; padding-right: 5px; margin-right: 5px; text-align: right; font-family: monospace">1<br />2<br /></div></td><td valign="top"><pre style="margin: 0">$ git commit --fixup=&lt;commit&gt; 
$ git rebase --autosquash &lt;commit&gt;^</pre></td></tr></table></code><hr />
</div><br />
<br />
Cela fonctionne, mais cela vous oblige à détailler le mécanisme plutôt que l’intention. Git 2.55 s’appuie sur la commande expérimentale <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git history</span>, introduite dans Git 2.54, en ajoutant une nouvelle sous-commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">fixup</span>. Elle applique les modifications actuellement mises en attente dans l’index à un commit antérieur :<br />
<br />
<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	<hr /><code class="bbcode_code">$ git history fixup &lt;commit&gt;</code><hr />
</div><br />
<br />
Voici un petit exemple. Le premier commit a introduit une recette de crêpes, suivie de quelques autres commits par-dessus. Plus tard, on se rend compte qu’il manquait du sirop d’érable dans la recette. Après avoir mis en attente cette modification d’une ligne, la commande <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git history fixup &lt;commit&gt;</span> l’intègre au commit de la recette d’origine et réapplique les commits descendants par-dessus. Ici, la modification mise en attente fait partie intégrante du commit cible lui-même. Par défaut, le commit cible conserve son message et son auteur, sauf si vous passez l’option <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">--reedit-message</span>, et Git réécrit les commits suivants afin que la branche aboutisse à un historique équivalent avec la correction à la bonne place.<br />
<br />
Comme le reste de <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">git history</span>, cette commande est encore expérimentale. Elle est également volontairement prudente. Comme <span style="font-family: monospace; padding: 2px; background: #ddd; display: inline-block">fixup</span> lit à partir de l’index, elle nécessite un arbre de travail et ne peut pas fonctionner dans un dépôt nu ; si l’application de la modification mise en attente devait produire un conflit, la commande s’interrompt plutôt que de vous laisser au milieu d’une réécriture avec état.<br />
<br />
<b>Source</b> : <a rel="nofollow" href="https://github.blog/open-source/git/highlights-from-git-2-55/" target="_blank">Annonce de Git 2.55</a><br />
<br />
<b>Et vous ?</b><br />
<br />
:fleche: Pensez-vous que cette annonce est crédible ou pertinente ?<br />
:fleche: Quel est votre avis sur le sujet ?<br />
<br />
<b>Voir aussi :</b><br />
<br />
:fleche: <a href="https://alm.developpez.com/actu/382453/Le-systeme-de-gestion-de-versions-distribue-Git-2-54-est-disponible-et-introduit-la-commande-git-history-et-des-hooks-ameliores-pour-une-meilleure-gestion-des-depots/" target="_blank">Le système de gestion de versions distribué Git 2.54 est disponible et introduit la commande « git history » et des hooks améliorés pour une meilleure gestion des dépôts</a><br />
<br />
:fleche: <a href="https://alm.developpez.com/actu/377924/Git-va-changer-le-nom-par-defaut-de-sa-branche-master-en-main-dans-la-version-3-0-prevue-pour-fin-2026-afin-de-promouvoir-un-langage-inclusif-dans-le-contexte-des-changements-sociaux-de-2020/" target="_blank">Git va changer le nom par défaut de sa branche « master » en « main » dans la version 3.0, prévue pour fin 2026, afin de promouvoir un langage inclusif dans le contexte des changements sociaux de 2020</a><br />
<br />
:fleche: <a href="https://alm.developpez.com/actu/371109/Linus-Torvalds-celebre-le-20e-anniversaire-de-Git-Est-il-plus-celebre-que-Linux/" target="_blank">Linus Torvalds célèbre le 20e anniversaire de Git. Est-il plus célèbre que Linux ?</a></div>


	<div style="padding:10px">

	

	
		<fieldset class="fieldset">
			<legend>Images attachées</legend>
				<div style="padding:10px">
				<img class="attach" src="https://www.developpez.net/forums/attachments/p677331d1783071374/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/1.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p677332d1783071380/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/2.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p677333d1783071384/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/3.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p677334d1783071389/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/4.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p677335d1783071394/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/5.jpg/" alt="" />&nbsp;<img class="attach" src="https://www.developpez.net/forums/attachments/p677336d1783071399/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/6.jpg/" alt="" />&nbsp;
			</div>
		</fieldset>
	

	

	

	</div>
]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1930/general-developpement/alm/usine-logicielle/scm/git/">GIT</category>
			<dc:creator>Jade Emy</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2184483/general-developpement/alm/usine-logicielle/scm/git/systeme-gestion-versions-distribue-git-2-55-disponible/</guid>
		</item>
		<item>
			<title><![CDATA[Les messages d'erreur de Git]]></title>
			<link>https://www.developpez.net/forums/showthread.php?t=2184159&amp;goto=newpost</link>
			<pubDate>Wed, 10 Jun 2026 05:18:59 GMT</pubDate>
			<description>Yo, 
Je suis en train de...</description>
			<content:encoded><![CDATA[<div>Yo,<br />
Je suis en train de bosser sur un système expert (pas une appli boostée à l'IA) et je voudrais savoir où je peux trouver les messages d'erreur de Git ? Dans les sources, d'accord, mais plus simplement ? J'ai lu ProGIt, ils n'y sont pas.<br />
Merci les Copains.</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1930/general-developpement/alm/usine-logicielle/scm/git/">GIT</category>
			<dc:creator>Toulousaing</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2184159/general-developpement/alm/usine-logicielle/scm/git/messages-d-erreur-git/</guid>
		</item>
		<item>
			<title>Git sur ancien Synology</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2183397&amp;goto=newpost</link>
			<pubDate>Sat, 25 Apr 2026 07:09:48 GMT</pubDate>
			<description><![CDATA[Bonjour 
 
J'ai un souci de...]]></description>
			<content:encoded><![CDATA[<div>Bonjour<br />
<br />
J'ai un souci de connexion client-serveur.<br />
<br />
J'ai un dépôt Git sur un Synology DS110J (~2010) pour les sauvegardes de mes petits développements.<br />
Je l'utilisais depuis un Raspberry PI2 sous Raspbian (Buster il me semble) et ça fonctionnait.<br />
J'ai changé le Raspberry par un Pi3 avec le dernier OS, et ça ne fonctionne plus.<br />
Le SSH fonctionne.<br />
<br />
Je peux cloner (j'ai pu récuperer le dépot sur le nouveau RPI3)<br />
Je peux faire &quot;git commit&quot; mais lorsque je fait &quot;git push&quot; l'erreur suivante apparait :<br />
<br />
<div style="margin: 20px; margin-top: 5px"><pre class="alt2" style="border: 1px inset; padding: 5px">&quot;kex_exchange_identification: read: Connection reset by peer
Connection reset by 192.168.1.88 port 22
fatal : Impossible de lire le dépôt distant. Veuillez vérifier que vous avez les droits d'accès et que le dépôt existe.&quot;</pre></div>Après recherche, il semble que les &quot;nouveaux&quot; git ouvrent plusieurs flux, alors que les anciens n'en ouvraient qu'un.<br />
Si quelqu'un a une solution, je suis preneur.<br />
<br />
merci</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1930/general-developpement/alm/usine-logicielle/scm/git/">GIT</category>
			<dc:creator>JNZero</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2183397/general-developpement/alm/usine-logicielle/scm/git/git-ancien-synology/</guid>
		</item>
		<item>
			<title>Droit git ww-data</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2182291&amp;goto=newpost</link>
			<pubDate>Tue, 24 Feb 2026 18:59:26 GMT</pubDate>
			<description><![CDATA[Bonjour, 
 
J'ai un site...]]></description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
<br />
J'ai un site prestashop hébergé sur un VPS Debian (avec Docker).<br />
J'ai un environnement de développement Docker, et je modifie des fichiers en local (theme, modules...) et push sur github.<br />
Quand je pull depuis mon VPS, les fichiers ont comme propriétaire graphandco (mon user git), et prestashop ne peut pas écrire dessus car il est en www-data, et bim erreur 500.<br />
<br />
Je cherche la bonne manière de procéder. J'ai lu des solutions en utilisant ACL ou des scripts post-merge. Mais dans les 2 cas, je dois préciser des dossiers.<br />
Actuellement je ne travaille que sur le thème, mais si je créé un nouveau module par exemple, ou que je modifie des fichiers dans le dossier mails ou autre, si je n'ai pas anticipé et que je push/pull, je peux me retrouver avec une erreur 500 en prod.<br />
<br />
Quelle est la bonne manière de faire pour éviter ça, en restant bien évidemment en totale sécurité sur les droits ?<br />
<br />
Merci d'avance</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1930/general-developpement/alm/usine-logicielle/scm/git/">GIT</category>
			<dc:creator>Reggio</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2182291/general-developpement/alm/usine-logicielle/scm/git/droit-git-ww-data/</guid>
		</item>
		<item>
			<title>Utiliser GIT uniquement en local pour du dev php sous linux</title>
			<link>https://www.developpez.net/forums/showthread.php?t=2179104&amp;goto=newpost</link>
			<pubDate>Mon, 08 Sep 2025 12:44:36 GMT</pubDate>
			<description><![CDATA[Bonjour, 
Est-ce qu'il est...]]></description>
			<content:encoded><![CDATA[<div>Bonjour,<br />
Est-ce qu'il est possible d'utiliser GIT uniquement en local.<br />
Le dépot serait par exemple sur /home/$USER/git/projet1<br />
Travaillant dans /var/www/public/projet1, le clone marche<br />
par contre la commande git add . suivie de git commit -m &quot;bla bla bla&quot; n'opère que sur ce qui est dans /var/ et rien n'est remonté dans le &quot;dépot&quot;.<br />
Est-ce qu'il y a moyen de faire ça ?<br />
cordialement,<br />
Eric</div>

]]></content:encoded>
			<category domain="https://www.developpez.net/forums/f1930/general-developpement/alm/usine-logicielle/scm/git/">GIT</category>
			<dc:creator>foxbille</dc:creator>
			<guid isPermaLink="true">https://www.developpez.net/forums/d2179104/general-developpement/alm/usine-logicielle/scm/git/utiliser-git-uniquement-local-dev-php-sous-linux/</guid>
		</item>
	</channel>
</rss>
