Ich arbeite zum ersten Mal an Git. Ich habe meinen Zweig auf Github geschoben und er hat alle Bibliotheken und Dokumente in den Github geschoben. Was kann ich nun tun und wie kann ich den Befehl gitignore verwenden, um denselben Fehler erneut zu vermeiden?
119
.gitignore
ist eine Datei in Ihrem Git-Stammverzeichnis. Fügen Sie die Namensmuster für die Dateien hinzu, die Sie ignorieren möchten, und die Dateien werden automatisch ignoriert.git init
. Das.git
Verzeichnis befindet sich dort.Antworten:
Basierend auf Ihren Aussagen handelt es sich bei diesen Dateien um Bibliotheken / Dokumentationen, die Sie nicht löschen, aber auch nicht weiterleiten möchten
github
. Angenommen, Sie haben Ihr Projekt in einem Ordneryour_project
und einem Dokumentverzeichnis :your_project/doc
.git rm --cached doc/*
.gitignore
, können Sie eine direkt in Ihrem Projektordner erstellen :project/.gitignore
.doc/*
den .gitignore eingit add project/.gitignore
git commit -m "message"
.github
.quelle
Wenn Sie keine Gitignore-Datei haben, verwenden Sie zuerst:
dann diesen Befehl, um Zeilen in Ihre Gitignore-Datei einzufügen:
quelle
touch
die Datei zuerst.>>
ist auch,>
wenn die Datei noch nicht existiert.echo
Hängt am Ende der Ausgabe eine neue Zeile an. Sie können das mit stoppen-n
. Wenn Sie verschiedene Ignorierungen benötigen, führen Sie entweder verschiedene Echos durch oder verwenden Sie-e
Folgendes :echo -e "**/cache/\n**.pyc" >> .gitignore
. Das doppelte Sternchen stimmt auch rekursiv mit allen Dateien überein, die sich in Ordnern befinden. Verwenden Sie/
am Ende von Ordnern, nur für den Fall.echo "file_to_be_ignored" >> .gitignore
, ohne dass Sie etwas anderes tun müssen. Beenden Sie Ordnernamen mit/
asecho "**/modules/" >> .gitignore
.Git Ignor ist eine Konvention in Git. Wenn Sie eine Datei mit dem Namen
.gitignore
festlegen, werden die Dateien in diesem Verzeichnis und tiefere Verzeichnisse ignoriert, die den in der Datei enthaltenen Mustern entsprechen. Am häufigsten wird nur eine solche Datei auf der obersten Ebene gespeichert. Sie können jedoch andere tiefer in Ihre Verzeichnisstruktur aufnehmen, um noch mehr Muster zu ignorieren, oder sie für dieses Verzeichnis und anschließend tiefere Muster nicht mehr ignorieren.Ebenso können Sie bestimmte Dateien in einer tieferen Struktur oder einer bestimmten Teilmenge "aufheben" (dh Sie ignorieren * .log, möchten aber weiterhin das wichtige.log verfolgen), indem Sie Muster angeben, die mit beginnen
!
. z.B:ignoriert alle Protokolldateien, verfolgt jedoch Dateien mit dem Namen "wichtig.log"
Wenn Sie Dateien verfolgen, die Sie ignorieren wollten, löschen Sie sie, fügen Sie das Muster zu Ihrer Gitignore-Datei hinzu und fügen Sie alle Änderungen hinzu
Von nun an werden sie in Ihrem Repository nicht mehr verfolgt.
Wenn Sie Ihre Geschichte bereinigen möchten, können Sie
Markieren Sie dann jedes Commit mit
e
oderedit
. Speichern Sie den Plan. Jetzt wird git Ihren Verlauf wiedergeben und bei jedem Commit anhalten, das Sie mit e markiert haben. Hier löschen Sie die Dateien, die Sie nicht möchten,git add -A
und dann,git rebase --continue
bis Sie fertig sind. Ihre Geschichte wird sauber sein. Stellen Sie sicher, dass Sie Ihren Mitarbeitern mitteilen, dass Sie einen Push erzwingen müssen und dass sie das, was sie noch nicht gedrückt haben, neu definieren müssen.quelle
In Ihrem Git-Stammverzeichnis befindet sich eine Datei mit dem Namen
.gitignore
. Es ist eine Datei, kein Befehl. Sie müssen nur die Namen der Dateien einfügen, die Sie ignorieren möchten, und sie werden automatisch ignoriert. Wenn Sie beispielsweise alle automatisch gespeicherten Emacs-Dateien ignorieren möchten, die mit enden~
, können Sie folgende Zeile hinzufügen:Wenn Sie unerwünschte Dateien aus Ihrem Zweig entfernen möchten, können Sie Folgendes verwenden
git add -A
: " Entfernt Dateien, die sich nicht mehr im Arbeitsbaum befinden ".Hinweis: Was ich als "Git-Stammverzeichnis" bezeichnet habe, ist einfach das Verzeichnis, in dem Sie es
git init
zum ersten Mal verwendet haben. Hier finden Sie auch das.git
Verzeichnis.quelle
Wenn Sie keine Gitignore-Datei haben. Sie können eine neue erstellen, indem Sie
Sie können einen Ordner ausschließen, indem Sie den folgenden Befehl in die .gitignore-Datei eingeben
Schieben Sie diese Datei in Ihr Git-Repository, damit eine neue Person, die Ihr Projekt klont, diese nicht erneut hinzufügen muss
quelle
Es gibt verschiedene Möglichkeiten, Gitignore Git zu verwenden
Um beispielsweise eine Datei mit dem Namen readme.txt zu ignorieren , müssen Sie lediglich readme.txt in die .gitignore-Datei schreiben.
alle TXT-Dateien zu ignorieren, schreiben Sie * .txt.
Ordner test ignorieren . Dann schreiben Sie einfach test / in die Datei.
Erstellen Sie einfach eine Gitignore-Datei und schreiben Sie alles ein, was Sie ignorieren möchten. Eine Beispiel-Gitignore-Datei wäre:
Weitere Informationen finden Sie in der Git-Dokumentation gitignore
quelle
Auf meinem Mac habe ich diese Datei gefunden.
.gitignore_global
Sie war in meinem Home-Verzeichnis verstecktls -altr
.Ich habe Eclipse-Dateien hinzugefügt, die Git ignorieren soll. Der Inhalt sieht folgendermaßen aus:
quelle