J'essaie de pousser du code à l'aide de quand j'ai fait Y a-t-il une façon de le faire? P> p> $ GIT Push Origin Master Code> mais je reçois l'erreur $ git fetch origine origine maître code> alors $ git diff d'origine / maître code> J'ai une liste de tous les fichiers et modifications qui étaient différents entre les deux repos. Cependant, je ne suis intéressé que dans la liste des fichiers qui ont changé entre le référentiel distant et la dernière fois que j'ai fait un maître d'origine $ git (code> sur ma zone locale. P>
3 Réponses :
git diff --stat master origin/master
Cela compare en fait votre commit actuel ( maître code>) par rapport à la leur ( origine / maître code>), ce qui n'est pas assez i> la même chose.
Cela signifie la dernière fois que vous avez récupéré Master, il était à A8E5E4E maintenant, il est à 295BF31.
Vous pouvez voir les fichiers modifiés avec quelque chose comme: p> mais peut-être encore plus intéressant est la sortie de git tire code> est identique à celui de git gitch code> suivi de git fusion code> (ou git rebase code>). < p> git fetch code> montre qui refit le cas échéant. Cela montrera quelque chose comme: p> gitk maître ... Origine / Master Code> Après la récupération. De cette façon, vous pouvez inspecter à la fois les changements de votre côté et les changements de côté d'origine. P> p>
J'ai constaté qu'avec l'état-name, j'ai également eu besoin non d'indiquer uniquement les noms de fichiers et non les différences.
Réponse de Michas est la bonne pour la question de la question.
Et si vous n'avez pas L'ancien ref, c'est-à-dire le La réponse est dans le Une autre notation spéciale est que je suppose confondre assez de formulation (et donné que certains commits pouvaient être dessinés comme ceci: p> Ce que vous avez est une divergence à valider Que Si vous exécutez supposant que vous êtes sur votre laissant le nom désactivé signifie Si votre git est assez nouveau, @ {u} code> fait référence à "la branche en amont de la branche actuelle" (ie, de A8E5E4E CODE> partie de A8E5E4E..295BF31 Master -> Origine / Master Code>? Probablement vous ne vous souciez pas réellement: comme il l'a suggéré, en regardant maître ... Origine / Master Code> peut être encore plus intéressant. 1 sup> Mais, que ce soit-il ... code> syntaxe signifie em>? p> GIT REV-LIST code> Documentation: P>
git diff code> utilise une signification assez différente). Mais vraiment, ce n'est pas si compliqué. P> C code>. Vous avez commencé à travailler lorsque maître code> et Origine / Master Code> tant pointé sur C code>. Clairement, vous avez commis d code> et E code> et "ils" (qui ils sont) engagés f code> et g code>. Commettre C code>, à la manière, est appelé la base fusion em>. P> maître ... Origine / Master Code> signifie est: trouvez-moi c code>, puis donnez-moi tout "à partir de là", sur les côtés gauche et droit. C'est-à-dire que tous les commits sur les deux maître code> et em> Origine / Master CODE>, en excluant tous les engagements à et en dessous du point où ils se rencontrent. p> Gitk Master ... Origine / Master Code> Vous verrez que: 2 sup> Tous les commits vous em > Fait et tous les commits ils sont fabriqués. Mais si vous exécutez git diff drapeaux em> maître ... Origine / maître code>, git diff code> jette la majeure partie de cela. Au lieu de cela, il trouve la base de fusion c code>, 3 sup> et diffère que par rapport au nom de latérale droite. P> Master code> branche (c.-à-d. Tête Code> signifie simplement "Master" de toute façon), vous pouvez la raccourcir encore plus loin. Pour voir quels fichiers ils ont modifié depuis votre et leurs branches divergèrent, il suffit d'exécuter: p> tête code>, donc c'est le même Comme tête ... Origine / maître code> identique à maître ... Origine / maître code>. p> maître code>, recherche origine / maître code>), vous pouvez donc exécuter: P> $ git log --graph --boundary ...origin/master