2009-04-13 4 views
1

J'ai une machine distante RemoteMachine qui détiennent le clone d'un autre MachineWeNotConcern avec:Comment est-ce que je peux transformer un repos-aucun-repos distant à un reopos nue sans re-cloner dans la machine locale dans git?

git clone MachineWeNotConcern/prj prj 

Mon clone de la machine locale comme ceci:

git clone RemoteMachine/prj local_prj 

Maintenant, je veux faire des prises en pension de la RemoteMachine à nu (comment ?) comme si je vérifié avec:

git clone --bare MachineWeNotConcern/prj prj 

Et je ne veux pas re-clone de mes mises en pension nues du RemoteMachine parce qu'il alw ays prend beaucoup de temps.

Comment puis-je y parvenir?

Répondre

4

Vous pouvez créer un nouveau clone à partir de votre dépôt local sur la machine distante du projet avec --bare. par exemple:

git clone --bare prj bare_prj 

Ensuite, supprimez le prj d'origine. Ce serait plus rapide que de le cloner de la machine d'origine à nouveau.

EDIT: Une autre solution:

On dirait que vous pourriez faire votre pension dans une pension à nu par:

  • modifier le fichier .git/config pour avoir nue = true au lieu de nu = false
  • enlever le contenu du PRJ/* autre que le fichier .git
  • déplacer le contenu .git dir dans PRJ/et le retrait du .git dir

Au moins, cela semble fonctionner pour moi, mais il pourrait y avoir des raisons pour lesquelles cela échouerait, pour autant que je sache.

Questions connexes