it-swarm-eu.dev

Jak klonujete úložiště Git do určité složky?

Provedení příkazu git clone [email protected]:whatever vytvoří adresář v mé aktuální složce pojmenované cokoliv a upustí obsah úložiště Git do této složky:

/httpdocs/whatever/public

Můj problém je, že potřebuji klonovaný obsah úložiště Git do mého aktuálního adresáře tak, aby se zobrazovaly ve správném umístění pro webový server:

/httpdocs/public

Vím, jak přesouvat soubory poté, co jsem klonoval úložiště, ale zdá se, že Git to rozbije, a rád bych byl schopen aktualizovat pouhým voláním git pull. Jak to mohu udělat?

1860
David Smith

Možnost A:

git clone [email protected]:whatever folder-name

Možnost B:

přesunout složku .git.

Ještě lepší:

Udržujte svou pracovní kopii někde jinde a vytvořte symbolický odkaz.

2655
Can Berk Güder

Myslím si, že mnoho lidí, kteří tuto otázku kladou, je po tom. Pokud jste in adresář, který má obsah úložiště git uložit, spusťte:

git clone [email protected]:whatever .

"." na konci určuje aktuální složku jako složku pokladny.

548
J Wynia

Jděte do složky .. Pokud je složka prázdná, pak:

git clone [email protected]:whatever .

else

git init
git remote add Origin PATH/TO/REPO
git fetch
git checkout -t Origin/master
193
csomakk

Základní klonování úložiště Git

Klonujete úložiště pomocí

git clone [url]

Chcete-li například klonovat knihovnu Open Source Git s názvem Open_framework, můžete tak učinit takto:

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

To vytvoří adresář s názvem open_framework (ve vašem aktuálním lokálním umístění souborového systému), inicializuje v něm adresář .git, stáhne všechna data pro toto úložiště a zkontroluje pracovní kopii nejnovější verze. Pokud přejdete do nově vytvořeného adresáře open_framework, zobrazí se zde soubory projektu připravené k práci nebo použití.

Klonování úložiště do specifické místní složky

Pokud chcete klonovat úložiště do adresáře s názvem něco jiného než open_framework, můžete jej zadat jako další možnost příkazového řádku:

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

Tento příkaz provede totéž jako předchozí, ale cílový adresář se nazývá mynewtheme.

Git má řadu různých přenosových protokolů, které můžete použít. Předchozí příklad používá protokol git: //, ale můžete také vidět http (s): // nebo user @ server: /path.git, který používá protokol SSH transfer.

79
Craig Gjerdingen

Když přesouváte soubory tam, kde je chcete, přesouváte také adresář .git? V závislosti na operačním systému a konfiguraci může být tento adresář skrytý. 

Obsahuje repo a podpůrné soubory, zatímco soubory projektu, které jsou ve vašem adresáři /public, jsou pouze verze v aktuálně ověřeném odevzdání (standardně hlavní větev).

13
Paul

Klon:

git clone [email protected]:jittre/name.git

Klonovat "specifickou větev":

git clone -b [branch-name] [email protected]:jittre/name.git
13
Selvamani

Klonování do Present Working Directory:

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

Klonování do Other Directory:

git clone https://github.com/link.git ./Folder1/Folder2

Doufám, že to pomůže :)

11
Sarat Chandra

Pokud chcete klonovat do aktuální složky, měli byste to zkusit:

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

Pokud se pokoušíte zkontrolovat věc v aktuálním adresáři, ujistěte se, že jste odstranili úložiště .git.

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

9
alex

Chcete-li klonovat repozitář git do určité složky, můžete použít parametr -C <path>, např.

git -C /httpdocs clone [email protected]:whatever

Ačkoliv v horní části bude stále vytvořena složka whatever, aby bylo možné klonovat obsah úložiště do aktuálního adresáře, použijte následující syntaxi:

git [email protected]:whatever .

Klonování do existujícího adresáře je only enabled, pokud je adresář empty .

Vzhledem k tomu, že klonujete do složky, která je přístupná veřejnosti, zvažte oddělení úložiště Git od pracovního stromu pomocí --separate-git-dir=<git dir> nebo vyloučení složky .git ve vaší konfiguraci webového serveru (např. V souboru .htaccess).

9
kenorb

Použití

git clone <repository>

Klonujte úložiště umístěné v úložišti na lokálním počítači. Původní úložiště může být umístěno na lokálním souborovém systému nebo na vzdáleném počítači přístupném přes HTTP nebo SSH.

git clone <repo> <directory>

Klonujte úložiště umístěné ve složce <repository> do složky nazvané <directory> na místním počítači.

Zdroj: Nastavení úložiště

7
Nagarjun

Zde je návod, jak bych to udělal, ale udělal jsem pro něj alias.

$ cd ~Downloads/git; git clone https:git.foo/poo.git

Tam je pravděpodobně elegantní způsob, jak to udělat, ale zjistil jsem, že je to nejjednodušší pro sebe.

Zde je alias, který jsem vytvořil, abych to urychlil. Udělal jsem to pro zsh, ale mělo by to fungovat dobře pro bash nebo jiné Shell jako ryby, xyzsh, fizsh a tak dále.

Upravit ~/.zshrc, /.bashrc, atd. S vaším oblíbeným editorem (moje je Leafpad, takže bych napsal $ leafpad ~/.zshrc).

Moje osobní preference je však vytvořit zsh plugin pro sledování všech mých přezdívek. Spuštěním těchto příkazů můžete vytvořit osobní plugin pro oh-my-zsh:

$ cd ~/.oh-my-zsh/
$ cd plugins/
$ mkdir your-aliases-folder-name; cd your-aliases-folder-name
     # In my case '~/.oh-my-zsh/plugins/ev-aliases/ev-aliases'
$ leafpad your-zsh-aliases.plugin.zsh
     # Again, in my case 'ev-aliases.plugin.zsh'

Poté přidejte tyto řádky do nově vytvořeného prázdného souboru alises.plugin:

# Git aliases
alias gc="cd ~/Downloads/git; git clone "

(Odtud nahraďte své jméno mým.)

Pak, aby se alias dostal do práce, musí být (spolu s zsh) zdrojem (nebo cokoliv, co se nazývá). Chcete-li to provést, přidejte v dokumentu vlastního pluginu tento odkaz:

## Ev's Aliases

#### Remember to re-source zsh after making any changes with these commands:

#### These commands should also work, assuming ev-aliases have already been sourced before:

allsource="source $ZSH/oh-my-zsh.sh ; source /home/ev/.oh-my-zsh/plugins/ev-aliases/ev-aliases.plugin.zsh; clear"
sourceall="source $ZSH/oh-my-zsh.sh ; source /home/ev/.oh-my-zsh/plugins/ev-aliases/ev-aliases.plugin.zsh"
#### 

####################################

# git aliases

alias gc="cd ~/Downloads/git; git clone "
# alias gc="git clone "
# alias gc="cd /your/git/folder/or/whatever; git clone "

####################################

Uložte si oh-my-zsh plugin a spusťte allsource. Pokud to nefunguje, jednoduše spusťte source $ZSH/oh-my-zsh.sh; source /home/ev/.oh-my-zsh/plugins/ev-aliases/ev-aliases.plugin.zsh. Tím se načte zdroj pluginů, který vám umožní používat allsource od nynějška.


Jsem v procesu tvorby úložiště Git se všemi mými přezdívkami. Prosím, neváhejte je zkontrolovat zde: Ev-dot-files . Prosím, neváhejte vidlice a zlepšit na ně, aby vyhovoval vašim potřebám.

3
Ev-

Pokud používáte ssh pro git cloning, můžete použít následující příkaz.

git -C path clone g[email protected]:path_to_repo.git

např .: git -C /home/ubuntu/ clone [email protected]:kennethreitz/requests.git by vytáhlo repozitář git pro requests na cestu /home/ubuntu/.

1
Ankit Singh

Z nějakého důvodu tato syntaxe nevystupuje:

git clone repo-url [folder]

Zde je složka volitelná cesta k místní složce (což bude lokální repozitář).

Git clone bude také pull kód ze vzdáleného úložiště do lokálního úložiště. Ve skutečnosti je to pravda: 

git clone repo-url  =  git init + git remote add Origin repo-url + git pull
0
prosti
For Windows user 

1> Open command Prompt.
2> Change the directory to destination folder (Where you want to store your project in local machine.)
3> Now go to project setting online(From where you want to clone)
4> Click on clone, and copy the clone command.
5> Now enter the same on cmd .

It will start cloning saving on the selected folder you given .
0
Tarit Ray