Ich habe ein lokales Git-Repository namens "Skeleton", das ich zum Speichern von Projektskeletten verwende. Es gibt einige Niederlassungen für verschiedene Arten von Projekten:
casey@agave [~/Projects/skeleton] git branch
* master
rails
c
c++
Wenn ich den Hauptzweig nach einem neuen Projekt durchsuchen möchte, kann ich dies tun
casey@agave [~/Projects] git clone skeleton new
Initialized empty Git repository in /Users/casey/Projects/new/.git/
und alles ist so wie ich es will. Insbesondere zeigt der neue Hauptzweig auf den Hauptzweig des Skeletts, und ich kann drücken und ziehen, um Änderungen am grundlegenden Projekt-Setup zu verschieben.
Was jedoch nicht funktioniert, ist, wenn ich einen anderen Zweig klonen möchte. Ich kann es nicht bekommen, so dass ich nur den gewünschten Zweig ziehe, zum Beispiel den rails
Zweig, und dann hat das neue Repository einen Zweig, der standardmäßig master
zum rails
Zweig des Skelett-Repositorys pusht und von diesem zieht .
Gibt es einen guten Weg, dies zu tun? Oder vielleicht möchte Git nicht, dass ich die Dinge so strukturiere, und dafür bin ich auf jeden Fall offen. Vielleicht sollte ich mehrere Repositorys haben, wobei das Ruby on Rails-Skelett-Repository das Master-Skelett-Repository verfolgt? Und jedes einzelne Projekt, das das Ruby on Rails-Skelett-Repository klont.
git checkout -b newbranch origin/branchiwant
besser funktionieren? (ohne die --track
Option)
git branch -a
zeigt?