Tutoriel GitLa colonne présente les commandes git couramment utilisées
Recommandé ( gratuit ): Tutoriel Git
1. Vérification rapide des commandes Git courantes
branche git Afficher toutes les branches locales
état git Afficher le statut actuel status
git commit
git branch -a Afficher toutes les branches
git branch -r Afficher toutes les branches distantes
git commit -am "init" commit Et ajoutez des commentaires
git remote add origin git@192.168.1.119:ndshow
git push origin master pour pousser le fichier vers le serveur
git remote show origin pour afficher le Ressources de la bibliothèque distante dans origin
git push origin master:develop
git push origin master:hb-dev Associer la bibliothèque locale à la bibliothèque sur le serveur
git checkout - - track origin/dev Basculer vers la branche dev distante
git branch -D master develop Supprimer la bibliothèque locale develop
git checkout -b dev Créer une nouvelle branche locale dev
git merge origin/dev Fusionner la branche dev avec la branche actuelle
git checkout dev Passer à la branche dev locale
git remote show Afficher la bibliothèque distante
git add .
nom du fichier git rm (y compris le chemin) Supprimez le fichier spécifié de git
git clone git://github.com/schacon/grit.git Extrayez le code du serveur
git config --list Afficher tous les utilisateurs
git ls-files Afficher ceux soumis
git rm [nom du fichier] Supprimer un fichier
git commit -a Commit toutes les modifications apportées au dépôt actuel
git add [nom du fichier] Ajouter un fichier à git index
git commit -v Vous pouvez voir les différences de validation lorsque vous utilisez le paramètre -v
git commit -m "Ceci est le message décrivant le commit" Ajouter des informations de commit
git commit -a -a signifie ajouter, ajouter toutes les modifications à l'index git, puis valider
git commit -a -v commande de validation générale
git log pour voir votre journal de validation
git diff pour afficher les mises à jour non planifiées
git rm a.a move Supprimer les fichiers (supprimer du zone de préparation et espace de travail)
git rm --cached a.a Supprimer les fichiers (supprimer de la zone de préparation uniquement)
git commit -m "remove" Supprimer les fichiers (supprimer de Git)
git rm -f a.a Supprimer de force les fichiers modifiés (supprimer de la zone de préparation et de l'espace de travail)
git diff --cached ou $ git diff --staged Afficher les mises à jour non validées
git stash push Poussez le fichier vers un espace temporaire
git stash pop Extrayez le fichier de l'espace temporaire
--------------------- ----------------------------- -------
git distant ajouter l'origine git@github. com:username/Hello-World.git
git push origin master Soumettre le projet local au serveur
------------------ ------------------------------- -------------
git pull synchronisation locale et serveur
------------------ -------------------- -------------------------------
git push (nom de l'entrepôt distant) (nom de la succursale) Push le local branchement sur le serveur.
git push origin serverfix:awesomebranch
-------------------------------- -----------------------------------
git fetch équivaut à obtenir la dernière version de Local distant, ne fusionnera pas automatiquement
git commit -a -m "log_message" (-a consiste à soumettre toutes les modifications, -m consiste à ajouter des informations de journal) Les modifications locales sont synchronisées avec le serveur :
git branch branch_0.1 master Créer une branche branch_0.1 à partir de master branch master
git branch -m branch_0.1 branch_1.0 Renommer branch_0.1 en branch_1.0
git checkout branch_1.0/master Passer à branch_1.0/master branch
du -hs
git branch Supprimer la branche distante
git push origin :branch_remote_name
git branch -r -d branch_remote_name
--------------------------------------------------- -- --------------------
Initialisez le référentiel et soumettez-le au serveur distant
mkdir WebApp
cd WebApp
git init initialisation locale
touchez README
git add README add file
git commit -m 'first commit'
git remote add origin git@github.com:daixu/WebApp.git
Ajouter un serveur distant
La commande ci-dessus ajoutera l'adresse URL à 'git@github.com : daixu/ WebApp.git', une bibliothèque de serveur distant nommée origin. Lorsque vous soumettez du code à l'avenir, il vous suffit d'utiliser l'alias origin
2. Aide-mémoire de la commande Git
1. Généralement commandes Git utilisées
Brève description de la commande
git add à la zone de préparation
git add – ajout interactif interactif
git apply application patch
patch de format de courrier électronique d'application git am
git annoter synonyme, équivalent à git blâme
git archive file archive packaging
git bisect binaire recherche
git blâme Traçabilité des fichiers ligne par ligne
gestion des branches de branche git
outil de recherche d'objets du référentiel de fichiers git cat
git checkout paiement vers l'espace de travail, changer ou créer une branche
sélection de soumission git cerise-pick
soumission graphique git citool, équivalente à la commande git gui
git clean efface les fichiers non suivis dans l'espace de travail
git clone clone version Library
git commit
git config requête et modification de la configuration
git décrire affiche visuellement les ID de validation à travers des jalons
comparaison des différences git diff
git difftool appelle l'outil de comparaison graphique des différences
git fetch pour obtenir les validations de la télécommande le dépôt
git format-patch crée un fichier de patch au format email. Voir la commande git am
outil de recherche et de localisation de contenu de fichier git grep
git gui est un outil graphique basé sur Tcl/Tk, axé sur des opérations telles que la soumission
git help
initialisation du référentiel git init
git init-db* synonyme, équivalent à git init
git log affiche le journal de validation
git merge branch merge
Résolution graphique des conflits avec Git mergetool
git mv rename
git pull retire les commits du référentiel distant
git push vers le référentiel distant
Rebase de branche git rebase
Git rebase – rebase de branche interactif interactif
Gestion de branche git reflog et autres enregistrements de modifications de référence
Gestion de référentiels distants git à distance
git repo-config* synonyme, équivalent à git config
git reset réinitialise la branche de changement "curseur" pour qu'elle pointe vers
git rev-parse convertit diverses notations de référence en valeur de hachage ha, etc. .
git revert reverse commit
git rm delete file
git show affiche différents types d'objets
git stage* synonymes, équivalents Enregistrer et restaurer la progression dans git add
git stash
git status affiche l'état du fichier de l'espace de travail
gestion des jalons des balises git
2. Opérations de la bibliothèque d'objets liées à la commande
Brève description de la commande
git commit-tree crée un commit à partir d'un objet d'arborescence
git hash-object calcule une valeur de hachage ou crée un objet à partir d'une entrée standard ou d'un fichier
git ls-files affiche les fichiers de l'espace de travail et de la zone de préparation
git ls-tree affiche les fichiers contenus dans l'objet arbre
git mktag lit l'entrée standard et crée un objet jalon
git mktree lit l'entrée standard et crée un objet arborescence
git read-tree lit l'objet arborescence dans la zone de préparation
le contenu de l'espace de travail git update-index est enregistré dans la zone de préparation Gestion de la zone et de la zone de transit
git unpack-file crée un fichier temporaire contenant le contenu du blob spécifié
git write-tree crée un objet arborescence à partir de la zone de transit
3. Opérations de référence Commandes associées
Brève description de la commande
git check-ref-format vérifie si le nom de référence est conforme à la spécification
itérateur de référence git for-each-ref , utilisé pour la programmation shell
git ls-remote affiche les références aux référentiels distants
git name-rev affiche les identifiants de validation sous forme de noms conviviaux
git peek-remote* Commandes obsolètes, veuillez utiliser git ls -remote
git rev-list affiche la plage de versions
git show-branch affiche la liste des branches et la relation topologique
git show-ref affiche les références locales
git symbolic-ref affiche ou définit la référence symbolique
git update-ref met à jour le point de référence
git verify-tag vérifie la balise de signature GPG
4. Gestion du référentiel Commandes associées
Brève description de la commande
git count-objects affiche le nombre et l'utilisation du disque des objets libres
reconstruction du référentiel git filter-branch
vérification de l'intégrité de la bibliothèque d'objets git fsck
git fsck-objects* synonyme, équivalent à git fsck
optimisation du stockage de la bibliothèque de versions git gc
git index-pack crée une correspondance à partir de fichiers packagés Le fichier d'index
git loss-found* est obsolète, veuillez utiliser la commande git fsck –lost-found
git pack-objects pour lire l'ID de l'objet à partir de l'entrée standard et emballez-le dans le fichier
git pack-redundant trouve les fichiers de pack redondants
git pack-refs regroupe les références dans les fichiers .git/packed-refs
git prune supprime les objets expirés de la bibliothèque d'objets
git prune-packed supprime les objets libres qui ont été compressés
git relink établit un lien physique pour les mêmes objets dans le référentiel local
git repack packs objets en vrac décompressés dans le référentiel
git show-index lit le fichier d'index du package et affiche le contenu du fichier empaqueté
git unpack-objects libère le fichier du fichier empaqueté
git verify-pack verify Fichier du package de bibliothèque d'objets
5. Commandes liées au transfert de données
Brève description de la commande
git fetch-pack Exécuter cette commande localement. lors de l'exécution de la commande git fetch ou git pull. Utilisation Utilisé pour obtenir les objets manquants à partir d'autres référentiels
Une commande exécutée à distance lorsque git get-pack exécute la commande git push, utilisée pour recevoir des données poussées
git send-pack exécute la commande git push Lorsque git upload-archive exécute la commande git archive –remote pour créer une archive basée sur le référentiel distant, le référentiel distant exécute cette commande pour transférer l'archive
git upload -pack exécute cette commande à distance lors de l'exécution de la commande git fetch ou git pull pour empaqueter et télécharger l'objet
6 Commandes liées aux e-mails
Brève description de la commande
git. imap-send envoie des correctifs via IMAP
git mailinfo exporte les instructions de soumission et les correctifs des e-mails
git mailsplit extrait les e-mails au format mbox ou Maildir dans des fichiers un par un
git request-pull crée des informations contenant des différences entre les commits et l'adresse pour effectuer l'opération PULL
git send-email envoie un e-mail
7. Commandes liées au protocole
Un bref. description de la commande
le démon git implémente le protocole Git
git http-backend implémente le programme CGI du protocole HTTP et prend en charge le protocole HTTP intelligent
git instaweb se lance instantanément le navigateur pour parcourir la bibliothèque de la version actuelle via gitweb
git shell Un shell restreint qui fournit un accès SSH pour exécuter uniquement les commandes Git
git update-server-info met à jour les fichiers auxiliaires requis pour le protocole stupide
git http-fetch obtient le référentiel via le protocole HTTP
git http-push pousse via le protocole HTTP/DAV
git remote-ext est appelé par les commandes Git et fournit une prise en charge étendue du protocole via des commandes externes
git remote-fd est appelé par les commandes Git et utilise des descripteurs de fichiers comme interfaces de protocole
git remote -ftp est appelé par la commande Git et prend en charge le protocole FTP
git remote-ftps est appelé par la commande Git et prend en charge le protocole FTPS
git remote- http est appelé par la commande Git et prend en charge le protocole HTTP
git remote-https est appelé par la commande Git et prend en charge le protocole HTTPS
exemple de script d'extension de protocole git remote-testgit
8. Commandes liées à la conversion et à l'interaction du référentiel
Brève description de la commande
git archimport importe le référentiel Arch dans Git
le bundle git soumet l'emballage et le déballage pour le transfert entre différents référentiels
git cvsexportcommit extrait un commit Git en tant qu'extraction CVS
git cvsimport importe le référentiel CVS dans Git. Ou utilisez cvs2git
git cvsserverLe simulateur de protocole CVS de Git, qui permet aux commandes CVS d'accéder au référentiel Git
git fast-export exporte les soumissions au format git-fast-import
git fast-import est un outil universel pour migrer d'autres référentiels vers Git
git svnGit en tant qu'opération frontale pour Subversion
9 Commandes auxiliaires liées à la fusion
Un bref. description de la commande
git merge-base est appelé par d'autres scripts pour trouver l'ancêtre commun le plus proche de deux commits ou plus
git merge-file effectue une fusion de fichiers à trois voies contre deux commits différents versions d'un fichier
git merge-index appelle l'outil de résolution de conflits spécifié pour les fichiers en conflit dans l'index
git merge-octopus fusionne deux branches ou plus. Voir la stratégie de fusion Octopus de git merge
git merge-one-file L'assistant standard appelé par git merge-index
git merge-ours fusionne en utilisant la version locale et en supprimant les versions des autres. Voir notre stratégie de fusion pour git merge
git merge-recursive pour une fusion à trois de deux branches. Voir la stratégie de fusion récursive de git merge
git merge-resolve pour une fusion à trois de deux branches. Voir la stratégie de fusion de résolution de git merge
fusion de sous-arbre git merge-subtree. Voir la stratégie de fusion de sous-arbres de git merge
git merge-tree résultats explicites de fusion à trois voies, sans modifier la zone de stockage temporaire
git fmt-merge-msg est utilisé pour les appels de script à effectuer opérations de fusion. Notes sur la création d'un commit de fusion
git réutilise la résolution de conflit enregistrée
10
Brève description de la commande
git bisect–helper par. La commande git bisect est appelée pour confirmer la progression de la recherche binaire
git check-attr affiche si un fichier a un certain ensemble d'attributs
git checkout-index copie le fichier de la zone de préparation vers le workspace
git Cherry recherche les commits qui n'ont pas été fusionnés en amont
git diff-files compare la zone de préparation et l'espace de travail, équivalent à git diff –raw
git diff-index compare la zone de préparation Area et le référentiel, équivalent à git diff –cached –raw
git diff-tree compare deux objets d'arborescence, équivalent à git diff –raw A B
git difftool – Commande helper par git difftool Call, l'outil de comparaison de différences par défaut à utiliser
git get-tar-commit-id extrait l'ID de validation du package tar créé par git archive
git gui– Commande Askpass git gui Obtenir l'interface de saisie du mot de passe de l'utilisateur
gestion des commentaires de soumission des notes git
git patch-id patch filtre les numéros de ligne et les caractères vides pour générer un ID de patch unique
git quiltimport applique la liste des correctifs Quilt à la branche actuelle
git replace soumet le remplacement
Résumé de la sortie du journal git de Git shortlog, adapté aux instructions de publication du produit
git stripspace supprime vide lignes pour d'autres appels de script
gestion des sous-modules git
commande git tar-tree obsolète, veuillez utiliser git archive
git var pour afficher les variables d'environnement Git
git web–browse startup Browser pour afficher les répertoires ou les fichiers
git whatchanged affiche l'historique des commits et les modifications de chaque commit
git-mergetool–lib est inclus dans d'autres scripts, permettant la sélection et la comparaison des outils de fusion/différence Exécuter
git-parse-remote est inclus dans d'autres scripts, fournissant des fonctions pour faire fonctionner des référentiels distants
git-sh-setup est inclus dans d'autres scripts, fournissant des bibliothèques de fonctions pour le shell programmation
Manuel de référence des commandes Git (version texte)
git init .name "xxx" # Configurer le nom d'utilisateur
git config --global user .email "xxx@xxx.com" # Configurer l'e-mail
Git Config -Global Color.ui True # Git Status et autres commandes colorent automatiquement
Git Config -Global Color.status Auto
Git Config -Global Color.diff Auto git config --global color.branch auto git config --global color.interactive auto git clone git+ssh://git@192.168.53.168/VT .git devoir avoir tous les fichiers modifiés dans le sous-répertoire, allez dans index git commit -m 'xxx' # Fusionner le dernier commit (pour une modification répétée) git commit -am 'xxx' # Supprimer les fichiers dans l'index git rm -r * Suppression récursive git log # Afficher 1 ligne de journal -n est n lignes git log -5 git log -stat 392818 # Afficher les détails d'un commit git show DFB02 # ne peut utiliser que les premiers git show head # pour afficher le journal dans le journal git show HEAD^ git log v2.0 # Afficher tous les changements qui n'ont pas été ajoutés au index git diff --cached Changes git diff HEAD^ # Comparez les différences avec le répertoire lib de la version HEAD git Diff Origin/Master. # Par rapport à la branche distante Master, il existe des branches locales > Git Branch # Afficher la branche locale git branch --contains 50089 Branche git branch - 🎜>branche git -- fusionné # Afficher toutes les branches qui ont été fusionnées dans la branche actuelle git branch --no-merged parce que checkout -b master_copy Branche pour créer une nouvelle branche master_copy et checkout git checkout -b master master_copy > git merge origin/ maître # Fusionner la branche principale distante avec la branche actuelle git cherry-pick ff44785404a8e Modifier git push origin master # Pousser la branche actuelle vers la branche principale distante git push origin :hotfixes/BJVEP933 #Supprimer la branche hotfixes/BJVEP933 du dépôt distant git push --tags # Pousser toutes les balises vers le dépôt distant git fetch Obtenir toutes les succursales distantes (faire pas mettre à jour les branches locales, la fusion est requise) git fetch --prune # Récupérez le maître de la branche distante et fusionnez-le dans la branche actuelle git mv README README2 git réinitialisation - Head-Head # delete Branch Hotfixes / bjvep933 (les modifications dans cette branche ont été fusionnées dans d'autres branches) Git Branch -d Hotfixes / Bjvep933 Fichier git show- branche Afficher l'historique de toutes les branches git whatchanged Modification de fichier git revert dfb02e6e4f2f7b573337763e5c0013802e392818 # Annuler la validation dfb02e6e4f2f7b573337763e5c0013802 e392818 git ls -tree HEAD Commande : Afficher le HASH SHA1 d'un certain ref yesterDay} # Afficher l'état de la branche Master hier git log -pretty = format: ' %h %s' -graph # icon soumettre un log git show head ~ 3 git stash show -p stash@{0} Git Grep "Delete from" # file Recherchez le texte "Delete from" Git Grep -e '#define' -And -e sort 🎜>git fsck Git est un système de contrôle de version distribué très puissant. Il convient non seulement à la gestion du code source de logiciels open source à grande échelle, mais présente également de nombreux avantages dans la gestion des documents privés et du code source. Commandes d'opération Git courantes : 1) Commandes liées à l'entrepôt distant Découvrez l'entrepôt : $ git clone git://github.com/jquery/jquery.git Afficher le référentiel distant : $ git remote -v Ajouter un référentiel distant : $ git Remote Add [nom] [url] Supprimer le référentiel distant : $ git Remote rm [ name ] Modifiez le référentiel distant : $ git remote set-url --push [name] [newUrl] Extractez le référentiel distant : $ git pull [remoteName] [localBranchName] Push l'entrepôt distant : $ git push [remoteName] [localBranchName] * Si vous souhaitez soumettre un test de branche locale à l'entrepôt distant et l'utiliser comme branche principale de l'entrepôt distant, ou comme une autre branche nommée La branche de test est la suivante : $git push origin test:master // Soumettez la branche de test locale en tant que branche principale distante $git push origin test:test // Soumettre la branche de test locale en tant que branche principale distante Branche de test à distance 2) Commandes liées au fonctionnement de la branche Afficher la branche locale : $ git branch Afficher la branche distante : $ git branch -r Créez une branche locale : $ git branch [name] ----Notez que la nouvelle branche ne basculera pas automatiquement vers la branche actuelle après sa création Switch branches : $ git checkout [nom] Créez une nouvelle branche et basculez-y immédiatement : $ git checkout -b [nom] Supprimez une branche : $ git branch -d [nom] ---- L'option -d ne peut supprimer que les branches ayant déjà participé à la fusion. Les branches ne peuvent pas être supprimées si elles n'ont pas été fusionnées. Si vous souhaitez supprimer de force une branche, vous pouvez utiliser l'option -D pour fusionner la branche : $ git merge [name] ---- Fusionner la branche nommée [name] avec la branche actuelle pour créer une branche distante (branche locale poussée vers la télécommande) : $ git push origin [name] Supprimer la branche distante : $ git push origin :heads/[name] ou $ gitpush origin :[name ] *Créer une branche vide : (Pensez à soumettre les modifications à votre branche actuelle avant d'exécuter la commande, sinon elle sera supprimée de force sans regrets) $git symbolic-ref HEAD refs /heads/[name] $rm .git/index $git clean -fdx 3) Commandes liées à l'opération de version (tag) Afficher la version : $ git tag Créer une version : $ git tag [nom] Supprimer la version : $ git tag -d [nom] Afficher la version distante : $ git tag -r Créer une version distante (pousser la version locale vers la télécommande) : $ git push origin [name] Supprimer la version distante : $ git push origin :refs/tags/[name] Fusionner les balises du référentiel distant vers le local : $ git pull origin --tags Télécharger les balises locales vers le référentiel distant : $ git push origin --tags Créer des balises annotées : $ git tag -a [nom] -m 'yourMessage' 4) Commandes d'opération liées au sous-module Ajouter un sous-module : $ git submodule add [url] [path] Pour exemple : $git submodule add git://github.com/soberh/ui-libs.git src/main/webapp/ui-libs Initialiser le sous-module : $ git submodule init ----Uniquement dans Just exécutez-le une fois lorsque vous consultez l'entrepôt pour la première fois Mettre à jour le sous-module : $ git submodule update ----Vous devez l'exécuter à chaque fois après la mise à jour ou le changement de branche Supprimer le sous-module : (min. 4 Promenade) 1) $ git rm --cached [path] 2) Editez le fichier ".gitmodules" et supprimez les nœuds de configuration pertinents du sous-module 3) Editez le fichier ".git/config" et supprimez les nœuds de configuration pertinents du sous-module 4) Supprimez manuellement les répertoires restants du sous-module 5) Ignorer certains fichiers et dossiers Ne soumettez pas Créez un fichier nommé ".gitignore" dans le répertoire racine de l'entrepôt, écrivez des noms de dossiers ou de fichiers inutiles, chaque élément peut occuper une ligne, comme cible bin *.db ====================== Commandes communes Git git branch Afficher toutes les branches locales git status Afficher l'état actuel git commit Submit git branch -a Afficher toutes les branches git branch -r Afficher toutes les branches locales git commit -am "init" Soumettre et ajouter des commentaires git remote add origin git@192.168.1.119:ndshow git push origin master Poussez le fichier vers le serveur git remote show origin affiche les ressources dans la bibliothèque distante origin git push origin master:develop git push origin master:hb-dev Associer la bibliothèque locale à la bibliothèque sur le serveur git checkout --track origin/dev Basculer vers la branche dev distante git branch -D master develop Supprimer la bibliothèque locale développer git checkout -b dev Créer une nouvelle branche locale dev git merge origin/dev Fusionner la branche dev avec la branche actuelle git checkout dev Switch vers la branche de développement locale git remote show Voir la bibliothèque distante git add . nom du fichier git rm (y compris le chemin) Supprimez le fichier spécifié de git git clone git://github.com/schacon/grit.git du serveur Déroulez le code git config --list pour voir tous les utilisateurs git ls-files pour voir ce qui a été soumis git rm [nom du fichier] pour supprimer un file git commit -a valide toutes les modifications apportées au dépôt actuel git add [file name] ajoute un fichier à git index git commit -v lorsque vous utilisez le Paramètre -v Vous pouvez voir la différence entre les commits git commit -m "Ceci est le message décrivant le commit" Ajouter des informations de commit git commit -a -a signifie ajouter, ajouter toutes les modifications Accédez à l'index git et commit git commit -a -v general commit command git log pour voir votre journal de commit git diff pour afficher les mises à jour qui ne l'ont pas été été mis en scène git rm a.a Supprimer les fichiers (supprimer de la zone de préparation et de l'espace de travail) git rm --cached a.a Supprimer les fichiers (supprimer de la zone de préparation uniquement) git commit -m "remove" supprime le fichier (supprime de Git) git rm -f a.a supprime de force le fichier modifié (supprime de la zone de préparation et de l'espace de travail) git diff --cached ou $ git diff --staged pour afficher les mises à jour non validées git stash push pousse les fichiers vers un espace temporaire git stash pop déplace les fichiers de l'espace temporaire vers le bas --- -------------------------------------- ------------ ---- git remote add origin git@github.com:username/Hello-World.git git push origin master soumettra les projets locaux au serveur --------------------------------------------- ---------- ------------- git pull synchronisation locale et serveur --------- ---------- --------------------------------------------- ------ git push (nom de l'entrepôt distant) (nom de la branche) Poussez la branche locale vers le serveur. git push origin serverfix:awesomebranch -------------------------------- ----------------------------------- git fetch équivaut à obtenir la dernière version de Local distant, ne fusionnera pas automatiquement git commit -a -m "log_message" (-a consiste à soumettre toutes les modifications, -m consiste à ajouter des informations de journal) Les modifications locales sont synchronisées avec le serveur : git branch branch_0.1 master Créer une branche branch_0.1 à partir de master branch master git branch -m branch_0.1 branch_1.0 Renommer branch_0.1 en branch_1.0 git checkout branch_1.0/master Passer à la branche branch_1.0/master du -hs ---------------------- -- ---------------------------------- mkdir WebApp cd WebApp git init touch README git add README git commit -m 'first commit' git remote add origin git@github.com:daixu/WebApp.git git push -u origin master
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!