Signification de double tirets 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-il équivalent à

git checkout --ours path/to/file.txt
git checkout --theirs path/to/file.txt
204
demandé sur Mateusz Piotrowski 2012-11-10 15:04:14
la source

2 ответов

supposons que j'ai un fichier nommé path/to/file.txt dans mon dépôt Git, et que je veux y revenir sur les modifications.

git checkout path/to/file.txt

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

git checkout master

Whoops! Cela a changé les branches à la place. Le -- sépare l'arbre que vous souhaitez consulter à partir des fichiers que vous souhaitez consulter.

git checkout -- master

cela nous aide aussi si un freako a ajouté un fichier nommé -f à notre dépôt:

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

Ceci est documenté dans git-checkout: l'Argument de Désambiguïsation .

291
répondu Dietrich Epp 2017-03-24 19:28:41
la source

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

78
répondu timmcliu 2015-03-05 20:04:00
la source

Autres questions sur git git-checkout