web-dev-qa-db-fra.com

Signification des doubles tirets de Git Checkout

Quelle est la signification des doubles tirets avant le nom du fichier dans cette commande git?

git checkout --ours -- path/to/file.txt
git checkout --theirs -- path/to/file.txt

Sont-ils obligatoires? Est-ce équivalent à

git checkout --ours path/to/file.txt
git checkout --theirs path/to/file.txt
244
mottalrd

Supposons que j'ai un fichier nommé path/to/file.txt dans mon référentiel Git et je souhaite annuler les modifications apportées.

git checkout path/to/file.txt

Supposons maintenant que le fichier s'appelle master...

git checkout master

Oups! Cela a changé de branche à la place. Le -- sépare l'arborescence à extraire des fichiers à extraire.

git checkout -- master

Cela nous aide également si certains utilisateurs ajoutent un fichier nommé -f vers notre référentiel:

git checkout -f      # wrong
git checkout -- -f   # right

Ceci est documenté dans git-checkout: Argument Disambiguation .

350
Dietrich Epp

Le double tiret "-" signifie "fin de la ligne de commande", c'est-à-dire qu'il indique à la commande précédente de ne pas essayer d'analyser ce qui vient après les options de la ligne de commande.

98
timmcliu