861 Stimmen

Alle Dateien zu einer Übergabe hinzufügen, außer einer einzelnen Datei?

Ich habe eine Reihe von Dateien in einem Changeset, aber ich möchte gezielt eine einzelne geänderte Datei ignorieren. So sieht es aus nach git status :

# modified:   main/dontcheckmein.txt
# deleted:    main/plzcheckmein.c
# deleted:    main/plzcheckmein2.c
...

Gibt es eine Möglichkeit, wie ich git add aber die eine Textdatei, die ich nicht anfassen möchte, einfach ignorieren? Etwa so:

git add -u -except main/dontcheckmein.txt

22voto

Anthony Naddeo Punkte 2154

Ben Jackson hat zwar Recht, aber ich dachte, ich würde hinzufügen, wie ich diese Lösung ebenfalls verwende. Unten ist ein sehr einfaches Skript, das ich benutze (das ich gitadd nenne), um alle Änderungen hinzuzufügen, außer einigen wenigen, die ich in einer Datei namens .gittrackignore (sehr ähnlich wie .gitignore).

#!/bin/bash
set -e

git add -A
git reset `cat .gittrackignore`

Und das ist mein derzeitiges .gittrackignore sieht so aus.

project.properties

Ich arbeite an einem Android-Projekt, das ich beim Bereitstellen von der Kommandozeile aus kompiliere. Dieses Projekt hängt von SherlockActionBar ab, so dass es in project.properties referenziert werden muss, aber das bringt die Kompilierung durcheinander, also gebe ich jetzt einfach ein gitadd und fügen Sie alle Änderungen zu Git hinzu, ohne jedes Mal das Hinzufügen von project.properties aufheben zu müssen.

18voto

gsumk Punkte 739

Um die Änderung in der Datei zu behalten, aber nicht zu übertragen, habe ich Folgendes getan

git add .

git reset -- main/dontcheckmein.txt

git commit -m "commit message"

um zu überprüfen, ob die Datei ausgeschlossen ist, do

git status

14voto

Daniel Danielecki Punkte 5658
git add .
git reset main/dontcheckmein.txt

8voto

Tom Taylor Punkte 2829

Wir können alle Dateien hinzufügen und die Datei, die durch Git Reset entfernt werden soll, ausschließen.

git add .
git reset -- <file_name_to_exclude>

7voto

Dhanuka Nuwan Punkte 690

Utilice git add -A um alle geänderten und neu hinzugefügten Dateien auf einmal hinzuzufügen.

Beispiel

git add -A
git reset -- main/dontcheckmein.txt

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X