Comment transférer les modifications vers le référentiel Git à partir d'un répertoire non initialisé

StackOverflow https://stackoverflow.com//questions/24028512

  •  21-12-2019
  •  | 
  •  

Question

J'ai une copie locale de tous les fichiers d'un référentiel Git dans un répertoire non initialisé, c'est-à-direnon suivi par Git (sans .git dedans) et j'y ai apporté quelques modifications.Comment puis-je transférer ces modifications vers le référentiel Git distant ?

Ces actions peuvent décrire ce que je veux dire :

  1. git clone … ./ - dépôt cloné
  2. rm -Rf ./.git - le référentiel n'est plus initialisé
  3. vi ./somefile - quelques changements introduits

Sous un aspect plus pratique :

J'ai un répertoire cloné d'une bibliothèque créée par bower outil de gestion des dépendances.J'ai introduit quelques modifications dans cette bibliothèque et je souhaite maintenant appliquer ces modifications au maître.

Je recherche un moyen intelligent de réinitialiser ce répertoire avec Git et de transmettre les modifications en une seule validation vers le référentiel distant.

Était-ce utile?

La solution

Je recherche un moyen intelligent de réinitialiser ce répertoire avec Git et de transmettre les modifications en une seule validation vers le référentiel distant.

Facile:initialisez-le ailleurs:

cd /path/to/somewhere/else
git clone /url/to/bower
cd bower

Référencez ensuite votre ancien dossier (dans lequel vous avez effectué quelques modifications) en tant qu'arborescence de travail git. pendant que vous êtes dans le nouveau dépôt cloné:

git --work-tree=/path/to/old/folder add .
git commit -m "changes'
git push

Voir le --work-tree option du git commande.


En théorie, vous pourriez faire le git clone directement dans votre ancien dossier avec git clone -n:

cd /path/to/your/old/folder
git clone -n /url/of/bower .

(Cela pourrait se plaindre que le dossier n'est pas vide, auquel cas faites le git clone -n ​​à l'extérieur et déplacez le dossier .git dans votre ancien dossier)

Mais je préfère garder l'ancien dossier intact et effectuer les opérations liées à git dans un clone séparé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top