2009-11-23 11 views

Antwort

20

Verschieben Sie einfach den Ordner .git von der Arbeitskopie entfernt.

mv /var/git/repo/repo/.git /var/git/repos/repo.git 

Vielleicht möchten Sie, dass mit einem

git config --bool core.bare true 

in diesem Repository verfolgen, nur für den Fall git beschwert sich über etwas nicht in Ordnung zu sein.

+0

Wie erstelle ich von Anfang an ein reines Repo-Programm? – mrblah

+1

Übergeben Sie das Flag '--bare' an' git': '$ mkdir myrepo.git && cd myrepo.git && git --bare init' – mipadi

+2

Oder einfach' git init --bare myrepo.git' –

40

Gemäß der FAQ kann die Konvertierung von nicht blank zu blank auf zwei Arten erfolgen. Das beste:

$ git clone --bare -l repo repo.git 
$ rm -rf repo 

Um einen nackten Repository von Grund auf neu zu erstellen:

$ mkdir repo.git 
$ cd repo.git 
$ git --bare init 
+0

Warum ist die erste Methode "einfacher"? Die zweite Methode scheint sowohl sicherer * als auch * einfacher zu sein (Sie brauchen die Umbenennungen nicht, um das gleiche Ergebnis zu erhalten wie die erste Methode, nur 'git clone --are repo' gefolgt von 'rm -rf repo' wird tun). –

+0

@Dan hat Recht, und ich habe meine Antwort geändert, um nur den sicheren * und * einfachen Ansatz zu enthalten. Mit der Version von git auf meiner Box (1.5.6.5) muss ich jedoch immer noch das Zielverzeichnis bereitstellen, wenn ich git-clone aufruft. –

+2

Gibt 'git clone' nicht die' remote'-Fernbedienung zu der, von der geklont wurde? In diesem Fall zu './Repo', die du 'rm''t ... – Boldewyn

5
git clone --bare repo 

Dies gibt Ihnen eine neue Version von nackten repo namens repo.git. Einfach, nicht?