2012-08-03 5 views
6

Wenn ich ein "vendors" -Verzeichnis in meinem .gitignore habe, gibt es eine Möglichkeit, dass ich eine Fernbedienung einrichten kann, die dieses Verzeichnis trotzdem erhält, wenn ich einen Push mache?Wie schiebe ich die in .gitignore angegebenen Dateien?

+2

"das wird dieses Verzeichnis trotzdem erhalten" - Entschuldigung, was meinst du? ein Verzeichnis wird entweder ignoriert oder nicht ... – Basic

+0

Es kann sein, dass es grundsätzlich nicht möglich ist. In diesem Fall, fühlen Sie sich frei, meine Frage zu beantworten, die so viel sagt, wenn Sie davon positiv sind :) –

+0

Ich bin nicht 100% sicher, nach was Sie suchen. Ich habe eine Antwort mit einigen Möglichkeiten von anderen SO Qs gepostet. Wenn das nicht ganz das ist, was Sie wollen, lassen Sie es uns wissen – Basic

Antwort

6

Ich denke, dass die Funktionalität, die Sie suchen, erreicht werden kann, indem Sie einen Zweig für die Bereitstellung in Ihrem Cloud-Provider verwenden.

Richten Sie einen dev Zweig ein, der Ihre .gitignore Datei enthält, überprüfen Sie Ihre inkrementelle Arbeit in diesem Zweig.

Verbinden Sie Ihre dev Verzweigung in Ihre deploy Verzweigung, die keine .gitignore Datei enthält, aber das Lieferantenverzeichnis enthält.

Sobald Sie Ihre Zusammenführung abgeschlossen haben, drücken Sie auf die Deployment Remote von Ihrem Zweig deploy.

+0

Super, danke! Ja, ich benutze php fog :) –

+0

beste Lösung dafür habe ich bisher empfohlen zu hören. Vielen Dank –

3

Ihre Datei .gitignore hat nichts mit Schieben zu tun. Es wird von Dingen wie git status und git add verwendet, um herauszufinden, welche Dateien Teil eines zukünftigen Commits sein sollten (oder könnten). Mit dem Befehl git add können Sie Dinge hinzufügen, die ignoriert werden. es wird einen Fehler werfen, wenn Sie die -f Option:

The following paths are ignored by one of your .gitignore files: 
somefilename 
Use -f if you really want to add them. 
fatal: no files added 

Sobald Sie die Datei in das Repository hinzugefügt haben, wird es mit anderen Änderungen geschoben entlang werden.

+0

Problem ist, ich möchte dieses Verzeichnis nicht zu meinem Repo festschreiben, ich will es nur auf einem Push zu einer bestimmten Fernbedienung (appfog) enthalten. In diesem Fall handelt es sich um ein Verzeichnis mit automatisch verwalteten Abhängigkeiten. –

+0

Das ist in Ordnung, aber es ist immer noch so, dass die Datei '.gitignore' nicht kontrolliert, was wo hinkommt. – larsks

Verwandte Themen