Also habe ich einen Ordner zu meiner .gitignore-Datei hinzugefügt.
Sobald ich eine git status
es sagt mir
# On branch latest
nothing to commit (working directory clean)
Wenn ich jedoch versuche, die Zweige zu ändern, erhalte ich folgende Meldung:
My-MacBook-Pro:webapp marcamillion$ git checkout develop
error: The following untracked working tree files would be overwritten by checkout:
public/system/images/9/thumb/red-stripe.jpg
public/system/images/9/original/red-stripe.jpg
public/system/images/8/thumb/red-stripe-red.jpg
public/system/images/8/original/red-stripe-red.jpg
public/system/images/8/original/00-louis_c.k.-chewed_up-cover-2008.jpg
public/system/images/7/thumb/red-stripe-dark.jpg
public/system/images/7/original/red-stripe-dark.jpg
public/system/images/7/original/DSC07833.JPG
public/system/images/6/thumb/red-stripe-bw.jpg
public/system/images/6/original/website-logo.png
public/system/images/6/original/red-stripe-bw.jpg
public/system/images/5/thumb/Guy_Waving_Jamaican_Flag.jpg
public/system/images/5/original/logocompv-colored-squares-100px.png
public/system/images/5/original/Guy_Waving_Jamaican_Flag.jpg
public/system/images/4/thumb/DSC_0001.JPG
public/system/images/4/original/logo.png
public/system/images/4/original/DSC_0001.JPG
public/system/images/4/original/2-up.jpg
public/system/images/3/thumb/logo2.gif
public/system/images/3/original/logo2.gif
public/system/images/3/original/Guy_Waving_Jamaican_Flag.jpg
public/system/images/3/original/11002000962.jpg
public/system/images/2/thumb/Profile Pic.jpg
public/system/images/2/original/Profile Pic.jpg
public/system/images/2/original/02 Login Screen.jpg
public/system/images/1/original/Argentina-2010-World-Cup.jpg
Please move or remove them before you can switch branches.
Aborting
So sieht meine .gitignore-Datei aus:
.bundle
.DS_Store
db/*.sqlite3
log/*.log
tmp/**/*
public/system/images/*
public/system/avatars/*
Wie kriege ich das hin, dass ich den Zweig wechseln kann, ohne diese Dateien zu löschen?
Wenn ich eine Änderung vornehme, hat das Auswirkungen auf diese Dateien? Mit anderen Worten, wenn ich danach zu diesem Zweig zurückkehre, ist dann alles perfekt bis zu meinem letzten Commit?
Ich will diese Dateien nicht verlieren, ich will nur nicht, dass sie zurückverfolgt werden.
48 Stimmen
Wenn Ihnen diese Dateien wirklich egal sind: git checkout -f <branch> in meinem Fall werden die Dateien während des Erstellungsprozesses generiert, so dass ich mich nicht weniger darum kümmern könnte
0 Stimmen
Das passiert manchmal, wenn man 'git checkout' (ohne Branch-Namen) ausführt. Um dies zu beheben, führen Sie 'git checkout branchname' aus.
2 Stimmen
Separate, aber kritisch verwandte Frage: Warum tritt dieser Fehler überhaupt auf? Warum kann Git nicht einfach zwischen Zweigen wechseln?
2 Stimmen
@ahnbizcad Denn wenn Sie an einer neuen Datei arbeiten und jemand in einem anderen Zweig zufällig eine Datei mit demselben Namen überträgt, wären Sie verärgert, wenn Git Ihre Version zerstört, wenn Sie den Zweig wechseln. Deshalb gibt es die Option -f.