Wie lösche ich eine Datei und einen Ordner über die Weboberfläche von github.com aus dem Repository von github.com?

25

Wie lösche ich eine Datei und einen Ordner über die Weboberfläche von github.com aus dem Repository von github.com? Ich habe bei Google gesucht, aber keine Antwort gefunden.

Ich habe herausgefunden, wie man Befehle verwendet

Allerdings möchte ich wissen, wie es mit github.com geht.

Metallgetriebe-massiv
quelle
Es gibt definitiv eine Möglichkeit, Dateien zu bearbeiten, aber ich bin nicht sicher, ob es eine Möglichkeit gibt, sie zu löschen. Wie auch immer, Sie möchten die Befehle vielleicht trotzdem. Das Lernen von Git im Terminal oder über eine grafische Benutzeroberfläche zahlt sich aus.
Christopher
Dies ist eine gültige Frage, auch für erfahrene Git-Benutzer. Ich benutze git von der Kommandozeile, habe aber nur ein Repo gegabelt, eine schnelle Änderung vorgenommen und möchte jetzt eine Datei entfernen, die nicht mehr benötigt wird, ohne das Repo auf meinem eigenen Computer klonen zu müssen.
Brian Mortenson
Ich habe eine Lösung hinzugefügt, die zwar nicht direkt von GitHub stammt (es ist mit prose.io), aber alle Dateien löscht und als Ergebnis auch den Ordner entfernt, da er leer ist. Es wird mit einem Skript ausgeführt, sodass nicht mehrere Dateien manuell entfernt werden müssen.
Arieljannai

Antworten:

12

Sie können eine Datei über die Schaltfläche "Löschen" löschen, einen Ordner jedoch nicht direkt über die Weboberfläche löschen. Um einen Ordner von GitHub.com zu löschen, müssen Sie alle darin enthaltenen Dateien löschen.

amar
quelle
Genau das habe ich in meiner Antwort gesagt.
Amar
3

Ich habe festgestellt, dass das Löschen aller Dateien in einem Ordner den Ordner automatisch löscht. Keine perfekte Lösung, aber es scheint beabsichtigt.

Gabriel
quelle
3

Sie haben einige Möglichkeiten:

  1. Löschen Sie alle Dateien aus diesem Ordner und github löscht den Ordner automatisch.
  2. Klonen Sie das Repository auf Ihrem lokalen Computer und löschen Sie den Ordner (hierfür können Sie entweder git bash / cmd verwenden, abhängig von Ihrem System oder github desktop application, falls auf Ihrem System installiert) und synchronisieren Sie es wieder mit dem Server.
pharask
quelle
2

Sie haben Ihre genauen Umstände nicht angegeben, sodass diese Antwort möglicherweise nicht Ihren Wünschen entspricht. Wenn Sie jedoch Windows verwenden, können Sie Github für Windows installieren , wodurch Sie alle regulären Git-Vorgänge ohne die Befehlszeile ausführen können.

Sie müssten zuerst das Repo in einen Ordner auschecken, die Datei aus dem Ordner löschen (dh im Windows Explorer), dann Ihre Änderungen festschreiben und wieder mit dem Github-Repo synchronisieren.

Verärgerte Ziege
quelle
3
Ich sage, dass die Verwendung der Weboberfläche von github.com sehr genau ist. Ihre Antwort ist richtig, hat aber nichts mit der Frage zu tun.
Alex
Das ist in Ordnung, aber das OP gab nicht wirklich an, was sein Problem war, nur dass er die Kommandozeile nicht mag. In der gleichen Weise, in der Fragen zu "Wie man HTML mit Regex parst" auf SO mit "Lösen Sie Ihr Problem auf andere Weise" beantwortet werden, ist meine Antwort eine alternative Methode. Natürlich können Sie gerne eine bessere Antwort geben, wenn es eine gibt.
DisgruntledGoat
Eigentlich hat er Folgendes getan: „Wie lösche ich eine Datei und einen Ordner aus dem github.com-Repository über die Weboberfläche von github.com?“ Er möchte eine Datei über die Weboberfläche löschen - die Website / Web-App / github.com.
Alex
Nein, hat er nicht. Der Titel hier ist eine Frage, kein Problem. Viele Leute stellen eine Frage, von der sie glauben, dass sie ihr Problem lösen wird, aber es gibt einen besseren Weg, um das Problem zu lösen. Dies kann hier der Fall sein oder nicht, wir müssen auf die Antwort des OP warten.
DisgruntledGoat
2

Diese Funktionalität wurde der GitHub-Weboberfläche hinzugefügt .

Bildbeschreibung hier eingeben

Mädchen für alles
quelle
2
Haben Sie eine Referenz dafür, wie einen Blog-Beitrag oder einen Screenshot der gewünschten Funktionalität?
Andrew Lott
Klar, sieh
dir
Dies scheint sich nur auf das Löschen von Dateien zu beziehen - nicht auf das Löschen von Ordnern.
ms609
@ ms609 ordner existieren in git nicht wirklich. Sie existieren nur Haltedateien. Durch Löschen (oder Verschieben) aller Dateien in einem Ordner wird der Ordner automatisch gelöscht. Sie werden sehen, dass es keine Möglichkeit gibt, einen leeren Ordner in git
Dogsbody
Richtig - aber das Löschen eines Ordners mit 1000 Dateien ist trotzdem eine mühsame Aufgabe, wenn jede Datei einzeln gelöscht werden muss.
ms609
2

Das Löschen von Ordnern über die Github-Weboberfläche ist nicht möglich: https://github.com/isaacs/github/issues/225

Es ist auf der Feature-Liste und wird dort wohl noch eine Weile bleiben.

Koen Prins
quelle
1

Ich weiß, dass es nicht von GitHubs Benutzeroberfläche stammt, aber ich hoffe, dass diese Lösung passt. Es erfordert nichts anderes als Ihren Browser und löst das Problem besser als nur mit der GitHub-Oberfläche.

Der skriptartige Weg

Vorbereitungen

  1. Verbinden Sie Ihr GitHub-Konto mit prose.io , um Ihre Projekte zu verwalten.
  2. Öffnen Sie den gewünschten Ordner, den Sie löschen möchten.
  3. Verwende dieses Skript [1]

Was es macht?

Es durchläuft die Dateien im aktuellen Ordner und löscht sie. Wenn sich in einem bestimmten Ordner keine Dateien befinden, wird er von GitHub entfernt.

var deleteSuccessful = 0, deleteFailed = 0;
var elements = $('a.delete');
var totalElements = elements.length;

function sleep(ms) {
    return new Promise(resolve => setTimeout(resolve, ms));
}

async function deleteFiles() {
    for (var i = 0; i < totalElements; i++) {
        var element = elements[i];
        var realConfirm = window.confirm;
        window.confirm = function(){
            window.confirm = realConfirm;
            return true;
        };
        try {
            element.click();
            deleteSuccessful += 1;
        } catch (error) {
            deleteFailed += 1;
        }

        await sleep(1000);
    }

    console.log("Total items identified: %d\nDeleted: %d\nFailed: %d\n** Operation %s **", 
        totalElements, deleteSuccessful, deleteFailed, totalElements == deleteSuccessful ? "successful" : "failed");
}

deleteFiles();

[1] Sie können es entweder in die Browserkonsole eingeben und ausführen oder es minimieren und als Lesezeichen verwenden


Getestet auf Chrome 67.


Verwendete Quellen: 1 , 2

Arieljannai
quelle
0

Ich habe eine Teillösung gefunden. Wir können Dateien von Github mit http://prose.io löschen, aber nur Dateien, keine Ordner

Metallgetriebe-massiv
quelle
prose.io ist die richtige Antwort, um eine Datei von github über ein Webinterface zu löschen - es ist nicht das Interface von github - aber es funktioniert absolut fantastisch. Ich habe nur nach einer Möglichkeit
gesucht,