3067 Stimmen

Wie erstelle ich ein Git-Repository in einen bestimmten Ordner?

Der Befehl git clone git@github.com:whatever erstellt ein Verzeichnis namens whatever, das ein Git-Repository enthält:

./
    whatever/
        .git

Ich möchte, dass der Inhalt des Git-Repositorys in mein aktuelles Verzeichnis ./ geklont wird:

./
    .git

7 Stimmen

Auf Windows können Sie Dateien aus dem Ordner verschieben, in dem Sie das Repo klonen möchten [falls vorhanden], sodass es leer ist, wenn Sie git clone ausführen. Nach dem Klonen verschieben Sie Ihre Dateien zurück [Strg-Z] und voilà! Wenn der aktuelle Ordner leer ist, verwenden Sie einfach: git clone giturl .

13voto

alex Punkte 139

Stellen Sie sicher, dass Sie das .git-Repository entfernen, wenn Sie versuchen, etwas in das aktuelle Verzeichnis zu überprüfen.

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

8voto

prosti Punkte 34344

Aus irgendeinem Grund hebt sich diese Syntax nicht ab:

git clone repo-url [Ordner]

Hier ist Ordner ein optionaler Pfad zum lokalen Ordner (der ein lokales Repository sein wird).

Git clone wird auch Code aus dem Remote-Repository in das lokale Repository pulln. Tatsächlich ist es wahr:

git clone repo-url  =  git init + git remote add origin repo-url + git pull

6voto

Riyas TK Punkte 1151

Wenn Sie sich im Verzeichnis befinden, in dem Sie den Inhalt des Git-Repositorys ablegen möchten, führen Sie folgendes aus:

git clone git@github.com:origin .

Das "." am Ende gibt den aktuellen Ordner als Checkout-Ordner an.

5voto

Ev- Punkte 199

Hier ist, wie ich es machen würde, aber ich habe einen Alias erstellt, um es für mich zu tun.

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

Es gibt wahrscheinlich einen eleganteren Weg, dies zu tun, aber ich fand es am einfachsten für mich.

Hier ist der Alias, den ich erstellt habe, um die Dinge zu beschleunigen. Ich habe es für zsh erstellt, aber es sollte genauso gut für bash oder jede andere Shell wie fish, xyzsh, fizsh usw. funktionieren.

Bearbeiten Sie ~/.zshrc, /.bashrc usw. mit Ihrem bevorzugten Editor (meiner ist Leafpad, also würde ich schreiben $ leafpad ~/.zshrc).

Meine persönliche Vorliebe ist es jedoch, ein zsh-Plugin zu erstellen, um alle meine Aliase zu behalten. Sie können ein persönliches Plugin für oh-my-zsh erstellen, indem Sie diese Befehle ausführen:

$ cd ~/.oh-my-zsh/
$ cd plugins/
$ mkdir your-aliases-folder-name; cd your-aliases-folder-name
     # In meinem Fall '~/.oh-my-zsh/plugins/ev-aliases/ev-aliases'
$ leafpad your-zsh-aliases.plugin.zsh
     # Wieder in meinem Fall 'ev-aliases.plugin.zsh'

Fügen Sie anschließend diese Zeilen in Ihre neu erstellte leere alises.plugin-Datei ein:

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

(Ersetzen Sie von hier an Ihren Namen durch meinen.)

Dann müssen die Aliase (zusammen mit zsh) eingebunden werden, um zu funktionieren. Fügen Sie dazu in Ihrem benutzerdefinierten Plugin-Dokument Folgendes hinzu:

## Ev's Aliase

#### Denken Sie daran, zsh neu zu laden, nachdem Sie Änderungen vorgenommen haben, mit diesen Befehlen:

#### Diese Befehle sollten auch funktionieren, vorausgesetzt, dass ev-aliases bereits zuvor eingebunden wurden:

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 Aliase

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

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

Speichern Sie Ihr oh-my-zsh-Plugin und führen Sie allsource aus. Wenn das nicht zu funktionieren scheint, führen Sie einfach source $ZSH/oh-my-zsh.sh; source /home/ev/.oh-my-zsh/plugins/ev-aliases/ev-aliases.plugin.zsh aus. Das lädt die Plugin-Quelle, die es Ihnen ermöglicht, von nun an allsource zu verwenden.


Ich bin dabei, ein Git-Repository mit all meinen Aliases zu erstellen. Bitte zögern Sie nicht, sie hier zu überprüfen: Ev's dot-files. Bitte zögern Sie nicht, sie zu fork und zu verbessern, um sie Ihren Bedürfnissen anzupassen.

4voto

Ankit Singh Punkte 594

Wenn Sie ssh für das Git-Clonen verwenden, können Sie den folgenden Befehl verwenden.

git -C Pfad clone git@github.com:Pfad_zum_Repo.git

Zum Beispiel: git -C /home/ubuntu/ clone git@github.com:kennethreitz/requests.git würde das Git-Repository für requests in Ihrem Pfad /home/ubuntu/ abrufen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X