Wenn Sie mit der rechten Maustaste auf einen Ordner klicken, wird der Menüpunkt "Reinigen" angezeigt. Ich nahm an, dass dies das Verzeichnis obj und bin bereinigen (entfernen) würde. Soweit ich sehen kann, tut es jedoch nichts. Gibt es eine andere Art und Weise? (Bitte sagen Sie mir nicht, dass ich zum Windows Explorer oder zur cmd.exe gehen soll.) Ich möchte den Ordner obj und bin entfernen, damit ich das Ganze einfach komprimieren kann.
visual-studio
msbuild
tom7
quelle
quelle
Antworten:
Da andere bereits geantwortet haben, entfernt Clean alle Artefakte, die vom Build generiert werden. Aber es wird alles andere zurücklassen.
Wenn Sie einige Anpassungen in Ihrem MSBuild-Projekt vorgenommen haben, kann dies zu Problemen führen und Dinge hinterlassen, von denen Sie denken, dass sie gelöscht werden sollten.
Sie können dieses Problem mit einer einfachen Änderung an Ihrem. * Proj umgehen, indem Sie dies irgendwo gegen Ende hinzufügen:
Dadurch wird alles in Ihrem bin-Ordner der aktuellen Plattform / Konfiguration entfernt.
------ Bearbeiten Sie die leichte Entwicklung basierend auf der Antwort von Shaman unten (teilen Sie die Stimmen und geben Sie ihm auch einige)
---- Bearbeiten Sie erneut mit Teilen von xDisruptor, aber ich habe die .vs-Löschung entfernt, da dies besser in einem .gitignore (oder einem gleichwertigen) bereitgestellt werden würde.
Aktualisiert für VS 2015.
Er bietet auch einen guten Vorschlag, wie Sie die Bereitstellung und Wartung der Aufgabe vereinfachen können, wenn Sie mehrere Projekte haben, in die Sie diese Aufgabe übernehmen können.
Wenn Sie diese Antwort wählen, stimmen Sie auch beide ab.
quelle
Wenn Sie git verwenden und ein korrektes
.gitignore
in Ihrem Projekt haben, können Sieum absolut jede Datei in der
.gitignore
Liste zu entfernen , dh sie wird bereinigtobj
undbin
Ordner (dasx
löst dieses Verhalten aus)quelle
--dry-run
, dies sagt Ihnen nur, was gelöscht werden soll. niceFür Visual Studio 2015 haben sich die MSBuild-Variablen etwas geändert:
Beachten Sie, dass dieses Snippet auch den Ordner .vs aus dem Stammverzeichnis Ihrer Lösung löscht. Möglicherweise möchten Sie die zugehörige Zeile auskommentieren, wenn Sie der Meinung sind, dass das Entfernen des .vs-Ordners ein Overkill ist. Ich habe es aktiviert, weil ich festgestellt habe, dass es in einigen Projekten von Drittanbietern Probleme verursacht, wenn Dateien ala application.config im Ordner .vs vorhanden sind.
Nachtrag:
Wenn Sie die Wartbarkeit Ihrer Lösungen optimieren möchten, möchten Sie möglicherweise noch einen Schritt weiter gehen und das obige Snippet wie folgt in eine separate Datei einfügen:
Fügen Sie diese Datei dann ganz am Ende jeder Ihrer * .csproj-Dateien ein:
Auf diese Weise können Sie Ihre zusätzliche Bereinigungslogik zentral an einem Ort anreichern oder optimieren, ohne sich die Mühe machen zu müssen, jede einzelne * .csproj-Datei jedes Mal manuell zu bearbeiten, wenn Sie eine Verbesserung vornehmen möchten.
quelle
So löschen Sie bin und obj vor dem Erstellen zur Projektdatei:
Hier ist ein Artikel: So entfernen Sie den Ordner bin und / oder obj vor dem Erstellen oder Bereitstellen
quelle
Diese Site: https://sachabarbs.wordpress.com/2014/10/24/powershell-to-clean-visual-studio-binobj-folders/ verwendet die Powershell-Befehle von William Kempf, um alle Ordner bin und obj aus dem aktuellen Verzeichnis und zu entfernen Unterverzeichnisse. Es sollte möglich sein, es vom Stammverzeichnis des Laufwerks aus auszuführen.
Hier ist Williams Version
In Williams eigenen Worten:
quelle
Schauen Sie sich Ron Jacobs fantastisches Open Source CleanProject an. Wenn Sie möchten , kümmert es sich sogar um das Zippen.
Hier ist der CodePlex- Link
quelle
Sie können bin- und obj- Ordner in Far Manager leicht finden und entfernen .
Im Sucheinstellungsdialog:
Wechseln Sie nach Abschluss der Suche die Ansicht zu "Panel" .
Hoffe es hilft jemandem.
quelle
Öffnen Sie in Windows einfach den Explorer, navigieren Sie zu Ihrem SLN-Ordner, klicken Sie in das Suchfeld und geben Sie kind: = Ordner; obj -> für obj-Ordner STRG + A ein und löschen Sie sie - dasselbe für bin Done
Kein Werkzeug oder zusätzliche Software erforderlich;)
quelle
Die Ordner werden nicht entfernt, aber die erstellten Nebenprodukte werden entfernt. Gibt es einen Grund, warum Sie die eigentlichen Build- Ordner entfernen möchten ?
quelle
Clean entfernt alle Zwischen- und Enddateien, die durch den Erstellungsprozess erstellt wurden, z. B. OBJ-Dateien und EXE- oder DLL-Dateien.
Die Verzeichnisse, in denen diese Dateien erstellt werden, werden jedoch nicht entfernt. Ich sehe keinen zwingenden Grund, warum Sie die Verzeichnisse entfernen müssen. Kannst du es weiter erklären?
Wenn Sie vor und nach einem "Clean" in diese Verzeichnisse schauen, sollten Sie sehen, dass Ihre kompilierte Ausgabe bereinigt wird.
quelle
Ich kann noch keinen Kommentar hinzufügen (kein minimaler Ruf erreicht),
daher hinterlasse ich diese Antwort, um Folgendes zu unterstreichen:
Die Aktion "BeforeBuild" mit
<RemoveDir Directories="$(BaseIntermediateOutputPath)" />
ist großartig, steht jedoch für mich im Widerspruch zu einem Entity Framework-Modell, das im selben Projekt enthalten ist.Der Fehler, den ich erhalte, ist:
Ich nehme an, das "edmxResourcesToembed" wird erstellt, bevor die Zielaktion "BeforeBuild" ausgeführt wird.
quelle
Basierend auf der Antwort von Joe habe ich den VB-Code in C # konvertiert:
quelle
Ich verwende VisualStudioClean, das leicht zu verstehen und vorhersehbar ist. Zu wissen, wie es funktioniert und welche Dateien es löschen wird, erleichtert mich.
Zuvor habe ich VSClean ausprobiert (Hinweis: VisualStudioClean ist nicht VSClean). VSClean ist fortgeschrittener. Es gibt viele Konfigurationen, bei denen ich mich manchmal frage, welche Dateien gelöscht werden sollen. Eine Fehlkonfiguration führt zum Verlust meiner Quellcodes. Um zu testen, wie die Konfiguration funktioniert, müssen alle meine Projekte gesichert werden, was sehr oft dauert. Am Ende wähle ich stattdessen VisualStudioClean.
Fazit: VisualStudioClean, wenn Sie eine Grundreinigung wünschen, VSClean für ein komplexeres Szenario.
quelle
So mache ich es mit einer Batch-Datei, um alle BIN- und OBJ-Ordner rekursiv zu löschen.
quelle
Ich speichere meine fertigen VS-Projekte, indem ich nur den Quellcode speichere.
Ich lösche die Ordner BIN, DEBUG, RELEASE, OBJ, ARM und .vs aus allen Projekten.
Dies reduziert die Größe des Projekts erheblich. Das Projekt
muss beim Herausziehen aus dem Lager wieder aufgebaut werden.
quelle
Nur ein Nachtrag zu allen oben genannten Antworten, falls jemand nicht weiß, wie einfach es in VB / C # ist, den gesamten Prozess bis zum Zip-Archiv zu automatisieren.
Nehmen Sie einfach eine einfache Forms-App aus den Vorlagen (falls Sie noch keine Housekeeping-App haben), fügen Sie eine Schaltfläche hinzu und installieren Sie sie mit ClickOnce auf Ihrem Desktop, ohne sich um spezielle Einstellungen oder vieles andere kümmern zu müssen. Dies ist der gesamte Code, den Sie an die Schaltfläche anhängen müssen:
Beachten Sie, dass das Löschen von Dateisystemen leicht schief gehen kann. Einer meiner Favoriten war, als ich feststellte, dass ich einen Ordner nicht löschen konnte, da er Elemente enthielt, die von Visual Studio erstellt wurden, während ich mit erhöhten Berechtigungen ausgeführt wurde (damit ich einen Dienst debuggen konnte).
Ich musste die Erlaubnis manuell erteilen oder die App vermutlich auch mit erhöhten Rechten ausführen. In beiden Fällen ist es meiner Meinung nach sinnvoll, einen interaktiven GUI-basierten Ansatz für ein Skript zu verwenden, zumal dies wahrscheinlich am Ende eines langen Tages erfolgt und Sie später nicht herausfinden möchten, dass Ihr Backup erstellt wurde existiert eigentlich nicht ...
quelle
Update: Visual Studio 2019 (Bereinigen Sie [bin] und [obj] vor der Veröffentlichung). Ich bin mir jedoch nicht sicher, ob [obj] gelöscht werden muss. Beachten Sie, dass auch eine Nuget-Paketkonfiguration vorhanden ist. Sie können die zweite Zeile entfernen, wenn Sie dies glauben.
quelle