Markieren Sie eine Datei im GIT-Repository als vorübergehend ignoriert

Lesezeit: 2 Minuten

Wir migrieren von Perforce zu GIT. Notwendigerweise gab es einige Dateien, die ich im Repository haben wollte, aber sie sollten nicht regelmäßig von einzelnen Entwicklern eingecheckt werden. Dinge wie Eclipse-Projektdateien. Jeder Entwickler erhält möglicherweise die anfängliche .project-Datei, passt sie dann jedoch leicht an seine Umgebung an.

Mit P4 konnte ich diese Dateien nehmen, sie in eine separate Änderungsliste einfügen und sie vergessen. Die Synchronisierung würde sie nicht überschreiben und sie würden nicht festgeschrieben, wenn ich meine Standard-Änderungsliste festgeschrieben habe.

Gibt es eine Möglichkeit, etwas Ähnliches mit GIT zu tun?

Ich möchte immer noch in der Lage sein, “git commit -a”

  • mögliches Duplikat von Commiting Machine Specific Configuration Files

    – Sinnvoll

    3. September 2014 um 19:36 Uhr

  • Mögliches Duplikat von Kann ich eine Datei ‘git commit’ und ihre Inhaltsänderungen ignorieren?

    – Trevor Boyd Smith

    13. Dezember 2017 um 19:40 Uhr

  • Ich möchte immer noch in der Lage sein, “git commit -a” — das ist genau dein Problem, genau da. Mit gitSie legen in der Regel nicht alles fest, sondern überprüfen, was sich geändert hat git status und git diffentscheiden Sie, was Sie hinzufügen (bzw .gitignore), und binden Sie dann genau das ein, was Sie brauchen. Dieser Arbeitsablauf stellt sicher, dass Ihre Commits keine Unordnung wie versehentlich eingecheckte Objekt- oder temporäre Dateien usw. enthalten. Siehe Erstellen von a git Geschichte erzählt eine Geschichte, und je besser Sie sie erzählen, desto nützlicher wird sie sein. Besser nicht mit gedankenlosem Begehen-meinen-Müllhaufen beschmutzen.

    – Cmaster – Wiedereinsetzung von Monica

    29. Januar 2018 um 16:14 Uhr

Sie suchen wahrscheinlich

git update-index --assume-unchanged .project

  • Gibt es eine Möglichkeit sicherzustellen, dass dies aktiviert ist, wenn ein Benutzer das Repository klont, anstatt sich darauf zu verlassen, dass er sich daran erinnert, es auszuführen?

    – Programmierer

    9. September 2015 um 11:44 Uhr

  • Nicht dass ich wüsste.

    – Aristoteles Pagaltzis

    13. September 2015 um 8:40 Uhr

Markieren Sie eine Datei im GIT Repository als vorubergehend ignoriert
VonC

Wenn Sie eine gemeinsame Basis für diese benötigen (.project, .classpath…), du kannst:

  • version Vorlagenversion dieser Dateien (.project_tpl, .classpath_tpl…)
  • Verwenden Sie einen Filtertreiber, um beim Auschecken die tatsächlichen Dateien zu generieren (die nicht versioniert und nur lokal von den Entwicklern geändert werden).

Alt-Text

(der ‘clean‘-Schritt während des Commit würde nichts für diese Vorlagen tun.
Nur der ‘smudge‘ Schritt wird hier verwendet, um die privaten Dateien zu generieren)

Hinweis: Dies ist ein leichter “Missbrauch” eines Filtertreibers, der nur Dateiinhalte verarbeiten und keine neuen erzeugen soll.
Aber es könnte Ihnen in Ihrem Szenario helfen (vorausgesetzt, Ihr ‘smudge‘-Skript überschreibt die Eclipse-Dateien nicht blind, wenn sie bereits hier sind.)

  • Also könnte ich eine ziemlich dumme Schmierroutine erstellen, die .tmpl von allem mit einer .tmpl-Erweiterung entfernt. Ich könnte dann .project.tmpl oder configuration.xml.tmpl zu git hinzufügen und wenn Leute sie ziehen, erhalten sie .project oder configuration.xml. Ich denke, ich könnte diese generierten Dateien auch zu .gitignore hinzufügen und golden sein.

    – Marc Hughes

    23. Juli 2010 um 14:04 Uhr

1002990cookie-checkMarkieren Sie eine Datei im GIT-Repository als vorübergehend ignoriert

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy