Forum: PC-Programmierung git Bereich vergroessern


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Dergute W. (derguteweka)


Lesenswert?

Moin,

Ich hab' hier ein Projektverzeichnis bla1, das liegt Unterverzeichnis 
blupp.
In bla1 liegt mein lokales git repository
Sieht also so aus:
1
wirres_zeug/blupp/bla1/.git/git-innereien

Jetzt fang' ich noch ein neues Projekt an, bla2. Liegt unter
1
wirres_zeug/blupp/bla2/

Jetzt wuerde ich gerne mein git repository auf beide Projekte erweitern, 
also das es so aussieht:
1
wirres_zeug/blupp/.git/git-innereien

und beide Projekte bla1 und bla2 innerhalb dieses uebergeordneten 
repository rumoxidieren, wobei die Entstehungsgeschichte von bla1 
moeglichst in dem neuen repository stehen sollte.
Das Zeugs unter
1
wirres_zeug/blupp/bla1/.git/git-innereien
wuerde ich danach nicht mehr gesondert brauchen, wenn das alles dann 
unter
1
wirres_zeug/blupp/.git/git-innereien
liegt.


Wie machichndas?

Gruss
WK

von Sven B. (scummos)


Lesenswert?

Du verschiebst den Inhalt des Repos mit "git mv" in einen Unterordner 
bla1. Dann legst du einen neuen Unterordner bla2 an und machst da dein 
neues Projekt.

Dann verschiebst du das komplette Repo auf der Platte umher, wie du 
willst (das ist voellig belanglos fuer die Fragestellung).

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Ich will nicht die Projekte selbst verschieben, sondern "nur" das 
repository verschieben (ein Verzeichnis "nach oben") und (um bla2) 
erweitern.
Wobei ich mir mit dem reinen verschieben des repositories nicht so 
sicher bin; es aendern sich ja im repository die Pfade zu den 
versionierten Files (von Projekt bla1).

Gruss
WK

von MaWin (Gast)


Lesenswert?

Ich bin mir auch nicht sicher, was du möchtest.
Vielleicht ist git submodule das, was du willst?

von Tobias .. (bitfehler)


Lesenswert?

Schau dir mal Git Submodules an. Ich glaub das ist das was du willst.

von Jim M. (turboj)


Lesenswert?

Dergute W. schrieb:
> Ich will nicht die Projekte selbst verschieben [...]

Warum denn nicht?! Das ist mit Abstand die einfachste Lösung.

von Imonbln (Gast)


Lesenswert?

Tobias .. schrieb:
> Schau dir mal Git Submodules an. Ich glaub das ist das was du willst.

Ich glaube nicht das der TO submodule will ich denke er sucht sowas:
1
 #> cd wirres_zeug/blupp/bla1
2
 #> mkdir bla1
3
 #> git mv -k * bla1
4
 #> git commit -m "Move"
5
 #> mkdir bla2
6
 #> touch bla2/.keep
7
 #> git add bla2
8
 #> git commit -m "add folder bla2"
9
 #> cd ..
10
 #> mv bla1 old
11
 #> mv old/* .
12
 #> mv old/.* . 2>/dev/null
13
 #> (rmdir old)

Ich würde danach mit "git remote rename" das Ganze in einen neuen remote 
repo sammeln und das Alte als Read-only betreiben, aber zu dem teil hat 
der TO keine angaben gemacht.

Dennoch egal was der TO wirklich beabsichtigt. Schön sind alle Lösungen 
nicht. Das Submodule hätte wenigstens den Vorteil das andere welche nur 
bla1 brauchen ungestört weiterarbeiten können, auf der anderen Seite 
sind Submodule Stiefkinder von Git und verursachen auf Ihre eigene Art 
anderen Ärger.

von Dergute W. (derguteweka)


Lesenswert?

Moin,

Imonbln schrieb:
> Ich glaube nicht das der TO submodule will ich denke er sucht sowas:

Exakt. Das sieht sehr gut aus!

Scheint genau das zu machen, was ich vorhatte.
Heissen Dank! Insbesondere auch fuer's genaue Vorkauen - kommt meiner 
derzeitigen geistigen Aufnahmefaehigkeit sehr entgegen.

Gruss
WK

von Sven B. (scummos)


Lesenswert?

Dergute W. schrieb:
> Ich will nicht die Projekte selbst verschieben, sondern "nur" das
> repository verschieben (ein Verzeichnis "nach oben") und (um bla2)
> erweitern.
> Wobei ich mir mit dem reinen verschieben des repositories nicht so
> sicher bin; es aendern sich ja im repository die Pfade zu den
> versionierten Files (von Projekt bla1).

Genau. Jetzt einmal scharf nachdenken, und du wirst feststellen, dass du 
genau das durch Verschieben des Krams innerhalb des Repos in einen 
Unterordner im Repo erreichen kannst.

Edit: Ok, ich sehe, jemand hat das nochmal expliziter ausgeführt.

: Bearbeitet durch User

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.