Ein einzelnes Git-Repository für mehrere Git-Projekte verwenden

8

Ich bin billig. Ich möchte nicht für viele GitHub-Accounts bezahlen.

Ich habe eine Projektstruktur, die ungefähr so ​​aussieht.

  • / repo ist der Projektstamm.
  • / repo / project1 ist, wo ich ein Java-Projekt habe
  • / repo / herokurails1 ist, wo ich ein Ruby / Rails-Projekt habe, das zu heroku.com (zu einer Heroku-App namens hr1-fubar.heroku.com)
  • führt
  • / repo / herokurails2 ist, wo ich ein anderes Ruby / Rails-Projekt habe, das auf heroku.com (zu einer Heroku-App namens hr2-fubar.heroku.com) führt.

Alle Projekte (project1, herokurails1 und herokurails2 sind in aktiver Entwicklung).

Ich hätte gerne ein Repository an einem Git-Hosting-Ort wie github.com oder sogar einen lokalen Git-Server im Büro. Wenn Code irgendwo in / repo / geändert wird, möchte ich " git push github master " ausführen und meine gesamte / repo / haben Baum, der zu Github geschoben wurde.

Ich möchte aber auch meine Rails-Apps auf heroku.com bereitstellen können, ohne den gesamten repo / * Tree, der auf jede heroku-App geschoben wird, zu pushen. z.B.

  • / repo / herokurails1 & gt; git push heroku master würde das Projekt herokurails1 nur auf heroku anwenden, ohne irgendeinen anderen Code in / repo / *
  • hochzustoßen
  • / repo / herokurails2 & gt; git push heroku master würde das Projekt herokurails2 auch nur auf Heroku anwenden, ohne irgendeinen anderen Code in / repo / * hochzustoßen.

Ist das möglich? Muss ich etwas Besonderes einrichten, um dies zu ermöglichen? Oder stecke ich mit mehreren Git-Repositories fest?

    
Jay Godse 17.10.2011, 18:59
quelle

4 Antworten

3

Das wird sehr schnell sehr unhandlich (vor allem weil Git es nicht erlaubt, Unterverzeichnisse wie svn zu ziehen)

Ich würde versuchen, Github nicht zum Speichern von Projekten zu verwenden. Tools wie Bitbucket oder CodebaseHQ haben unterschiedliche Preismodelle was Ihnen vielleicht besser passt und Ihnen die Einfachheit gibt, die Sie brauchen.

Alternativ können Sie sich auch etwas wie Gitosis ansehen, das mit Tools wie Gitlab

sehr github-esque gemacht werden kann >     
Neil Middleton 18.10.2011, 08:50
quelle
2

Sie könnten git subtree lokal verwenden, um ein Git-Repository zu verwalten, von dem die Aufteilung erfolgt Ihr größeres Repository repo und Push von diesem geteilten Repository. Ehrlich gesagt würde ich entweder einen der kostenlosen Dienste verwenden, die Adam Dmitriuk schlägt vor, oder bezahlt GitHub ein bisschen mehr - sie bieten schließlich einen exzellenten Service ...

    
Mark Longair 18.10.2011 06:09
quelle
1

Wenn Sie möchten, können Sie "fuzzle" oder "bitbucket" verwenden, wenn Sie nichts bezahlen möchten. Verwenden Sie Submodule, um große Dateien wie Bilder, Drittanbieterdlls, Videos usw. auf GitHub zu hosten. Diese würden keine IP halten.

    
Adam Dymitruk 17.10.2011 19:49
quelle
0

Wie wäre es, jedes einzelne Projekt in einen anderen Zweig zu stellen? Bei mir hat es bisher gut funktioniert. Ich habe ein privates Repo für WebProjects und jeder Zweig beginnt mit Master, der meine Webprojektvorlage hat (könnte auch ein leerer Zweig sein) und jedes Mal, wenn ich ein neues Projekt habe, erstelle ich einfach einen masterbasierten Zweig mit dem Projektnamen und cary .

    
Yas 30.01.2016 08:38
quelle

Tags und Links