J'ai essayé mvde renommer le PROJ0.git dans mon `hôte de référentiel ', ça marche. Mais je ne sais pas si c'est vrai, je veux dire, valide.
Yantao Xie
5
Votre question est très bien. Git a des référentiels et ils peuvent contenir des projets comme des projets Eclipse si vous décidez de placer votre projet dans un référentiel git. Si c'est ce que vous vouliez, voyez comment le faire dans la réponse ci-dessous.
Danny Remington - OMS
3
gitlui-même n'a aucune disposition pour spécifier le nom du référentiel. Le nom du répertoire racine est la seule source de vérité concernant le nom du référentiel. Le .git/descriptionfichier n'est cependant utilisé que par certaines applications commeGitweb
Ujjwal Singh
Réponses:
620
Il existe différentes interprétations possibles de ce que l'on entend par renommer un référentiel Git: le nom affiché, le répertoire du référentiel ou le nom du référentiel distant. Chacun nécessite des étapes différentes pour renommer.
Nom affiché
Renommez le nom affiché (par exemple, indiqué par gitweb):
Modifiez .git/descriptionpour contenir le nom du référentiel.
Enregistrez le fichier.
Répertoire du référentiel
Git ne fait pas référence au nom du répertoire contenant le référentiel, tel qu'il est utilisé par git clone master child, nous pouvons donc simplement le renommer:
Ouvrez une invite de commande (ou une fenêtre du gestionnaire de fichiers).
Accédez au répertoire contenant le répertoire du référentiel (c'est-à-dire, n'allez pas dans le répertoire du référentiel lui-même).
Renommez le répertoire (par exemple, à l'aide mvde la ligne de commande ou du F2raccourci clavier d'une interface graphique).
Dans le deuxième cas, qu'advient-il de celui qui a déjà cloné le référentiel?
Frederico Schardong
3
Rien de mal. Ils conservent le nom d'origine, mais leur télécommande a maintenant tort: s'ils veulent extraire les mises à jour, ils doivent se connecter au nouveau nom. Si vous et eux êtes synchronisés ou un référentiel central, il conservera le nom d'origine et tout continuera à fonctionner
Alex Brown
14
Notez que l'assertion "git ne fait pas référence à ce nom de répertoire" dans le second cas est fausse si vous utilisez des sous-modules: git utilise un chemin absolu pour faire référence aux sous-modules, donc renommer votre répertoire de référentiel cassera les sous-modules. Voir stackoverflow.com/questions/10144149/…
Edward
J'utilise l'interface graphique GitHub pour Windows et je n'ai pas eu à modifier le fichier .git / description (je n'en ai pas). Le nom affiché dans l'interface graphique a changé après avoir effectué la dernière étape de réinitialisation de l'origine.
Joe Ernst
4
Les gens continuent de mentionner .git / description, mais sans mentionner le changement que vous y avez réellement apporté pour renommer le
référentiel
24
Un référentiel Git n'a pas de nom. Vous pouvez simplement renommer le répertoire contenant votre arbre de travail si vous le souhaitez.
Oui, un git repo a un nom. J'ai eu cette erreur après avoir renommé:$ git status fatal: Not a git repository: C:/xxx/.git/xxx fatal: git status --porcelain failed
Sawny
@Sawny, je ne vois pas ce que cela a à voir avec quoi que ce soit.
Tobu
19
Vous avez dit qu'un git repo n'a pas de nom, mais ce n'est pas vrai. Si vous utilisez des sous-carburants et renommez simplement le dossier, vous obtiendrez des erreurs de git. Voir stackoverflow.com/questions/9878860/…
Sawny
6
D'accord, le chemin d'un sous-module dans un référentiel git est important. C'est vrai mais pas pertinent pour cette question particulière.
Tobu
5
Bien sûr, les référentiels ont un nom. Voir ci-dessous comment le changer.
Danny Remington - OMS
19
Renommez- PRJ0.gitle PROJ1.git, puis modifiez la variable URL située dans le .git/configfichier de votre projet.
Cela pourrait aider les autres à noter qu'il s'agit d'une suggestion spécifique à Github, et ne s'appliquera pas à Git en général.
drame trouvé
1
à partir de janvier 2013, les instructions de github devraient maintenant être: (connectez-vous à github), allez dans votre dépôt, puis allez dans "Paramètres" >> "Options" et recherchez un bouton Renommer là. En ce qui concerne les avertissements rouges concernant les mauvaises choses qui se produisent, les Droogans sont liés à l'autre, donc la question est toujours fortement recommandée.
pestophage
12
Pour renommer un référentiel de votre compte GitHub:
Accédez à ce référentiel particulier que vous souhaitez renommer
Accédez à l'onglet des paramètres
Là, dans la section nom du référentiel, tapez le nouveau nom que vous souhaitez mettre et cliquez sur Rename
Si vous utilisez GitLab ou GitHub, vous pouvez modifier ces fichiers graphiquement.
Utiliser GitLab
Accédez aux paramètres de votre projet . Là, vous pouvez modifier le nom du projet et, surtout, vous pouvez renommer votre référentiel (c'est à ce moment que vous commencez à entrer dans la section danger).
Une fois cela fait, les configurations des clients locaux doivent être mises à jour à l'aide de
Si vous êtes dans Eclipse et avez installé Egit, vous pouvez renommer le référentiel qui contient un projet en procédant comme suit:
1) Dans Eclipse : fermez tous les projets qui se trouvent dans le référentiel.
2) Dans le système de fichiers : recherchez le répertoire / dossier qui contient le référentiel.
3) Dans le système de fichiers : Renommez le répertoire / dossier qui contient le référentiel.
4) Dans le système de fichiers : Ouvrez le répertoire / dossier qui contient le référentiel et renommez le répertoire / dossier du projet de tout projet que vous souhaitez renommer afin qu'il corresponde au nouveau nom du projet. (Ce n'est pas obligatoire mais cela donne une cohérence entre le nom du projet dans Eclipse et le répertoire / dossier du projet dans le référentiel.)
5) Dans Eclipse : supprimez tous les projets qui se trouvent dans le référentiel mais assurez-vous de NE PAS cocher la case «Supprimer le contenu du système de fichiers». (Le projet ne doit plus contenir l'emplacement correct du contenu du système de fichiers afin que les données ne puissent en aucun cas être supprimées, mais il vaut mieux prévenir que guérir.)
6) Dans Eclipse : dans le menu, sélectionnez l'option Fichier | Importer ...
7) Dans Eclipse : Dans la boîte de dialogue, ouvrez le dossier 'Git', sélectionnez 'Projects from Git' et cliquez sur 'Next'.
8) Dans Eclipse : Dans la boîte de dialogue, sélectionnez «Local» et cliquez sur «Suivant».
9) Dans Eclipse : Dans la boîte de dialogue, cliquez sur le bouton 'Ajouter ...'.
10) Dans Eclipse : Dans la boîte de dialogue, assurez-vous que la case à côté du référentiel est cochée et cliquez sur «Terminer».
11) Dans Eclipse : Dans la boîte de dialogue Dans, sélectionnez le référentiel et cliquez sur 'Suivant'.
12) Dans Eclipse : Dans la boîte de dialogue, sélectionnez le bouton radio «Importer les projets existants», sélectionnez le «Répertoire de travail» et cliquez sur «Suivant».
13) Dans Eclipse : Dans la boîte de dialogue Dans la case à cocher à côté des projets sur lesquels vous souhaitez travailler et cliquez sur «Terminer».
14) Dans Eclipse : renommez tous les projets qui se trouvent dans le référentiel si vous le souhaitez. (Par souci de cohérence entre Eclipse et le système de fichiers, donnez-leur le même nom que le répertoire / dossier du projet dans le répertoire / dossier du référentiel.)
+1 (amusé et pas surpris par 14 étapes requises pour cela dans Eclipse, en particulier le `` si vous avez installé Egit '', ce qui implique quelques dizaines d'autres étapes ...)
Jack Wasey
7
Git lui-même n'a aucune disposition pour spécifier le nom du référentiel. Le nom du répertoire racine est la seule source de vérité concernant le nom du référentiel.
Le .git/descriptionbien n'est utilisé que par certaines applications, comme GitWeb .
En ce qui concerne le référentiel distant, si vous utilisez Github ou Github Enterprise comme emplacement de serveur pour enregistrer / distribuer votre référentiel à distance, vous pouvez simplement renommer le référentiel directement dans les paramètres du référentiel.
Depuis la page principale du référentiel, l'onglet des paramètres se trouve à droite et le nom du référentiel est le premier élément de la page:
Github redirigera les demandes vers la nouvelle URL
Une fonctionnalité très intéressante de Github lorsque vous renommez un référentiel est que Github enregistre l'ancien nom du référentiel et toutes les URL associées et redirige le trafic vers les nouvelles URL . Étant donné que votre nom d'utilisateur / organisation et le nom du référentiel font partie de l'URL, un changement de nom modifiera l'URL.
Étant donné que Github enregistre l'ancien nom du référentiel et redirige les demandes vers les nouvelles URL, si quelqu'un utilise des liens basés sur l'ancien nom du référentiel lorsqu'il essaie d'accéder aux problèmes, au wiki, aux étoiles ou aux abonnés, il arrivera toujours au nouvel emplacement sur le site Web de Github. Github redirige également le niveau des commandes Git bas aiment git clone, git fetchetc.
Comme d'autres l'ont mentionné, le "nom" local de votre dépôt est généralement considéré comme le nom du dossier / répertoire racine, et vous pouvez le modifier, déplacer ou copier le dossier vers n'importe quel emplacement et cela n'affectera pas du tout le dépôt.
Git est conçu pour ne se soucier que des fichiers contenus dans le dossier racine.
"Si quelqu'un utilise des liens basés sur l'ancien nom du dépôt ... ils arriveront toujours au nouvel emplacement sur le site Web de Github". Oui, il existe une telle fonctionnalité. La même chose est valable pour BitBucket: community.atlassian.com/t5/Bitbucket-questions/… . Ce serait bien de savoir comment détruire complètement toutes les références à l'ancien nom, car je crois comprendre qu'il ne s'agit pas de renommer, mais de copier. Ce serait bien de connaître la procédure correcte pour le renommage complet (avec destruction de tous les vieux trucs).
Alexander Samoylov
@AlexanderSamoylov Je suis juste en train de deviner ici, mais je doute sincèrement que tout soit sauvegardé dans l'ancien format. Github devrait simplement garder l'ancien nom d'archive réservé et rediriger tout le trafic provenant de l'ancien nom d'archive vers le nouveau nom d'archive. c'est-à https://github.com/oldrepo/some_path- dire va juste rediriger vers https://github.com/newrepo/some_path, où tout a été déplacé. Le seul inconvénient devrait être que l'ancien nom du référentiel est réservé de façon permanente afin qu'il ne puisse pas être réutilisé (également bon pour éviter que les personnes qui ont enregistré l'ancienne URL y accèdent).
LightCC
3
Le changement de nom principal est ici (img 1), mais aussi changez readme.md (img 2)
mv
de renommer le PROJ0.git dans mon `hôte de référentiel ', ça marche. Mais je ne sais pas si c'est vrai, je veux dire, valide.git
lui-même n'a aucune disposition pour spécifier le nom du référentiel. Le nom du répertoire racine est la seule source de vérité concernant le nom du référentiel. Le.git/description
fichier n'est cependant utilisé que par certaines applications commeGitweb
Réponses:
Il existe différentes interprétations possibles de ce que l'on entend par renommer un référentiel Git: le nom affiché, le répertoire du référentiel ou le nom du référentiel distant. Chacun nécessite des étapes différentes pour renommer.
Nom affiché
Renommez le nom affiché (par exemple, indiqué par
gitweb
):.git/description
pour contenir le nom du référentiel.Répertoire du référentiel
Git ne fait pas référence au nom du répertoire contenant le référentiel, tel qu'il est utilisé par
git clone master child
, nous pouvons donc simplement le renommer:mv
de la ligne de commande ou du F2raccourci clavier d'une interface graphique).Référentiel distant
Renommez un référentiel distant comme suit:
[email protected]:User/project-new.git
)Définissez la nouvelle URL à l'aide de Git:
la source
Un référentiel Git n'a pas de nom. Vous pouvez simplement renommer le répertoire contenant votre arbre de travail si vous le souhaitez.
la source
$ git status fatal: Not a git repository: C:/xxx/.git/xxx fatal: git status --porcelain failed
Renommez-
PRJ0.git
lePROJ1.git
, puis modifiez la variable URL située dans le.git/config
fichier de votre projet.la source
Dans un nouveau référentiel, par exemple, après a
$ git init
, le répertoire .git contiendra le fichier .git / description.Qui ressemble à ceci:
Unnamed repository; edit this file 'description' to name the repository.
Le modifier sur le référentiel local ne le modifiera pas sur la télécommande.
la source
Si vous vouliez renommer votre référentiel, accédez à votre référentiel et cliquez sur "admin", puis renommez.
Une fois que vous voyez la boîte rouge vous avertissant de la chute du ciel et d'autres choses, allez lire cette question .
la source
Pour renommer un référentiel de votre compte GitHub:
la source
Si vous utilisez GitLab ou GitHub, vous pouvez modifier ces fichiers graphiquement.
Utiliser GitLab
Accédez aux paramètres de votre projet . Là, vous pouvez modifier le nom du projet et, surtout, vous pouvez renommer votre référentiel (c'est à ce moment que vous commencez à entrer dans la section danger).
Une fois cela fait, les configurations des clients locaux doivent être mises à jour à l'aide de
la source
Côté serveur, renommez simplement le référentiel avec la commande mv comme d'habitude:
Ensuite, côté client, changez la valeur de l'
[remote "origin"]
URL en la nouvelle:Ça a marché pour moi.
la source
Si vous êtes dans Eclipse et avez installé Egit, vous pouvez renommer le référentiel qui contient un projet en procédant comme suit:
1) Dans Eclipse : fermez tous les projets qui se trouvent dans le référentiel.
2) Dans le système de fichiers : recherchez le répertoire / dossier qui contient le référentiel.
3) Dans le système de fichiers : Renommez le répertoire / dossier qui contient le référentiel.
4) Dans le système de fichiers : Ouvrez le répertoire / dossier qui contient le référentiel et renommez le répertoire / dossier du projet de tout projet que vous souhaitez renommer afin qu'il corresponde au nouveau nom du projet. (Ce n'est pas obligatoire mais cela donne une cohérence entre le nom du projet dans Eclipse et le répertoire / dossier du projet dans le référentiel.)
5) Dans Eclipse : supprimez tous les projets qui se trouvent dans le référentiel mais assurez-vous de NE PAS cocher la case «Supprimer le contenu du système de fichiers». (Le projet ne doit plus contenir l'emplacement correct du contenu du système de fichiers afin que les données ne puissent en aucun cas être supprimées, mais il vaut mieux prévenir que guérir.)
6) Dans Eclipse : dans le menu, sélectionnez l'option Fichier | Importer ...
7) Dans Eclipse : Dans la boîte de dialogue, ouvrez le dossier 'Git', sélectionnez 'Projects from Git' et cliquez sur 'Next'.
8) Dans Eclipse : Dans la boîte de dialogue, sélectionnez «Local» et cliquez sur «Suivant».
9) Dans Eclipse : Dans la boîte de dialogue, cliquez sur le bouton 'Ajouter ...'.
10) Dans Eclipse : Dans la boîte de dialogue, assurez-vous que la case à côté du référentiel est cochée et cliquez sur «Terminer».
11) Dans Eclipse : Dans la boîte de dialogue Dans, sélectionnez le référentiel et cliquez sur 'Suivant'.
12) Dans Eclipse : Dans la boîte de dialogue, sélectionnez le bouton radio «Importer les projets existants», sélectionnez le «Répertoire de travail» et cliquez sur «Suivant».
13) Dans Eclipse : Dans la boîte de dialogue Dans la case à cocher à côté des projets sur lesquels vous souhaitez travailler et cliquez sur «Terminer».
14) Dans Eclipse : renommez tous les projets qui se trouvent dans le référentiel si vous le souhaitez. (Par souci de cohérence entre Eclipse et le système de fichiers, donnez-leur le même nom que le répertoire / dossier du projet dans le répertoire / dossier du référentiel.)
la source
Git lui-même n'a aucune disposition pour spécifier le nom du référentiel. Le nom du répertoire racine est la seule source de vérité concernant le nom du référentiel.
Le
.git/description
bien n'est utilisé que par certaines applications, comme GitWeb .la source
Pour les utilisateurs d' Amazon AWS
codecommit
,Référence: ici
la source
Pour être simple, supprimez simplement ce projet Eclipse (ne choisissez pas le contenu sur le disque), puis réimportez à nouveau le projet.
Eclipse identifiera le projet connecté à Git et le mettra en vue perspective Git.
Il fonctionne comme un charme.
la source
Avec Github comme télécommande
Renommer le référentiel distant sur Github
En ce qui concerne le référentiel distant, si vous utilisez Github ou Github Enterprise comme emplacement de serveur pour enregistrer / distribuer votre référentiel à distance, vous pouvez simplement renommer le référentiel directement dans les paramètres du référentiel.
Depuis la page principale du référentiel, l'onglet des paramètres se trouve à droite et le nom du référentiel est le premier élément de la page:
Github redirigera les demandes vers la nouvelle URL
Une fonctionnalité très intéressante de Github lorsque vous renommez un référentiel est que Github enregistre l'ancien nom du référentiel et toutes les URL associées et redirige le trafic vers les nouvelles URL . Étant donné que votre nom d'utilisateur / organisation et le nom du référentiel font partie de l'URL, un changement de nom modifiera l'URL.
Étant donné que Github enregistre l'ancien nom du référentiel et redirige les demandes vers les nouvelles URL, si quelqu'un utilise des liens basés sur l'ancien nom du référentiel lorsqu'il essaie d'accéder aux problèmes, au wiki, aux étoiles ou aux abonnés, il arrivera toujours au nouvel emplacement sur le site Web de Github. Github redirige également le niveau des commandes Git bas aiment
git clone
,git fetch
etc.Vous trouverez plus d'informations dans l' aide de Github pour renommer un référentiel
Renommer le nom du référentiel local
Comme d'autres l'ont mentionné, le "nom" local de votre dépôt est généralement considéré comme le nom du dossier / répertoire racine, et vous pouvez le modifier, déplacer ou copier le dossier vers n'importe quel emplacement et cela n'affectera pas du tout le dépôt.
Git est conçu pour ne se soucier que des fichiers contenus dans le dossier racine.
la source
https://github.com/oldrepo/some_path
- dire va juste rediriger vershttps://github.com/newrepo/some_path
, où tout a été déplacé. Le seul inconvénient devrait être que l'ancien nom du référentiel est réservé de façon permanente afin qu'il ne puisse pas être réutilisé (également bon pour éviter que les personnes qui ont enregistré l'ancienne URL y accèdent).Le changement de nom principal est ici (img 1), mais aussi changez readme.md (img 2)
la source
la source
Ouvrez le dépôt git sur le navigateur, accédez à "Setttings", vous pouvez voir le bouton renommer.
Saisissez un nouveau "Nom de référentiel" et cliquez sur le bouton "Renommer".
la source
Avez-vous essayé de changer le nom de votre projet
package.json
et d'exécuter la commandegit init
pour réinitialiser le Git existant à la place?Votre historique Git existant existera toujours.
la source
Cela a fonctionné pour moi sur Windows 10, via la ligne de commande:
De Comment renommer une branche Git locale et distante
Il s'agissait d'un référentiel local uniquement (pas sur les télécommandes).
la source