Vraag Hoe kloon je een Git-repository in een specifieke map?


Het commando uitvoeren git clone git@github.com:whatever maakt een map aan in mijn huidige map met de naam whatever en plaatst de inhoud van de Git-repository in die map:

/httpdocs/whatever/public

Mijn probleem is dat ik de inhoud van de Git-repository gekloond in mijn huidige directory nodig heb, zodat ze op de juiste locatie voor de webserver verschijnen:

/httpdocs/public

Ik weet hoe ik de bestanden moet verplaatsen nadat ik de repository heb gekloond, maar dit lijkt Git te doorbreken, en ik zou graag kunnen updaten door gewoon te callen git pull. Hoe kan ik dit doen?


1713
2018-03-16 15:56


oorsprong


antwoorden:


Optie A:

git clone git@github.com:whatever folder-name

Optie B:

verplaats ook de .git-map.

Beter nog:

Houd uw werkkopie ergens anders en maak een symbolische link.


2403
2018-03-16 16:08



Het voorbeeld waarvan ik denk dat veel mensen deze vraag stellen, is dit. Als je bent in de map waar je de inhoud van de git repository naartoe wilt dumpen, voer:

git clone git@github.com:whatever .

De "." aan het einde specificeert de huidige map als de checkout-map.


510
2018-02-25 17:15



Ga naar de map. Als de map leeg is, dan:

git clone git@github.com:whatever .

anders

git init
git remote add origin PATH/TO/REPO
git fetch
git checkout -t origin/master

175
2017-12-12 08:43



Basic Git Repository Cloning

Je kloon een repository met

git clone [url]

Als u bijvoorbeeld de Stanford University Drupal Open Framework Git-bibliotheek genaamd open_framework wilt klonen, kunt u dit als volgt doen:

$ git clone git://github.com/SU-SWS/open_framework.git

Dat maakt een map met de naam open_framework (op de locatie van je huidige lokale bestandssysteem), initialiseert een .git-directory erin, haalt alle gegevens voor die repository tevoorschijn en controleert een werkkopie van de nieuwste versie. Als u naar de nieuw gemaakte map open_framework gaat, ziet u de projectbestanden die daar staan, klaar om te worden bewerkt of gebruikt.

Een repository klonen in een specifieke lokale map

Als u de repository wilt klonen in een map met de naam iets anders dan open_framework, kunt u dat als de volgende opdrachtregeloptie opgeven:

$ git clone git:github.com/SU-SWS/open_framework.git mynewtheme

Die opdracht doet hetzelfde als de vorige, maar de doeldirectory wordt mynewtheme genoemd.

Git heeft een aantal verschillende overdrachtsprotocollen die u kunt gebruiken. In het vorige voorbeeld wordt het protocol git: // gebruikt, maar u kunt ook http (s): // of gebruiker @ server: /path.git zien, die het SSH-overdrachtsprotocol gebruikt.


70
2018-04-23 21:27



Wanneer u de bestanden naar de gewenste locatie verplaatst, verplaatst u ook de .git directory? Afhankelijk van uw besturingssysteem en configuratie, is deze map mogelijk verborgen.

Het bevat de repo- en de ondersteunende bestanden, terwijl de projectbestanden die zich in uw bevinden /public directory zijn alleen de versies in de momenteel uitgecheckte commit (standaard master branch).


12
2018-03-16 16:14



kloon:

git clone git@jittre.unfuddle.com:jittre/name.git

Kloon de "specifieke tak":

git clone -b [branch-name] git@jittre.unfuddle.com:jittre/name.git

11
2018-04-04 06:46



Als je in de huidige map wilt klonen, zou je dit eens moeten proberen:

git clone https://github.com/example/example.git ./

11
2017-09-11 00:59



Zorg ervoor dat u de .git-repository verwijdert als u iets uit de huidige directory probeert te controleren.

rm -rf .git dan git clone https://github.com/symfony/symfony-sandbox.git


9
2018-02-25 22:17



Om git repository naar een specifieke map te klonen, kun je gebruiken -C <path> parameter, b.v.

git -C /httpdocs clone git@github.com:whatever

Hoewel het nog steeds een whatever map erboven, dus gebruik de volgende syntax om de inhoud van de repository in de huidige map te klonen:

git git@github.com:whatever .

Merk op dat klonen in een bestaande map is enkel en alleen toegestaan ​​wanneer de map is leeg.

Omdat je aan het clonen bent in de map die toegankelijk is voor het publiek, kun je overwegen om je Git-repository te scheiden van je werkboom door te gebruiken --separate-git-dir=<git dir> of uitsluiten .git map in uw webserverconfiguratie (bijvoorbeeld in .htaccess het dossier).


9
2018-01-08 20:04



Gebruik

git clone <repository>

Kloon de repository op de <repository> op de lokale machine. De originele repository kan zich op het lokale bestandssysteem bevinden of op een externe machine die toegankelijk is via HTTP of SSH.

git clone <repo> <directory>

Kloon de repository op <repository> in de map met de naam <directory> op de lokale computer.

Bron: Een repository opzetten


7
2018-06-26 11:42