2017-01-09 5 views
0

Ein Kollege und ich sind auf eine seltsame GitHub-Anomalie gestoßen und können sie nicht verstehen oder verstehen.GitHub mit falschem Head-Commit

Hintergrund

Wir haben eine Anwendung, die Commits zu einem GitHub Repo mit Stücken von Text macht wir in einem großen Vergleichs-Engine verwenden. Wir arbeiten nur am Master-Zweig. Wir verwenden keine anderen Zweige.

Ausgabe

Wenn die repo durch GitHub Zugriff auf die neuesten Festschreibung als XXXXXX (für die Zwecke dieser Diskussion) gezeigt. Ein Fehler, der durch die Anwendung zurückgegeben wir entwickelt haben, aufgenommen, dass der Kopf war begehen nicht wie erwartet, und wenn

git log 

begehen YYYYYY läuft gezeigt HEAD zu sein. Commit YYYYYY wird nicht im GitHub-Commit-Protokoll angezeigt, aber wenn es in die github-Commit-Anzeige-URL eingefügt wird, wird das Commit angezeigt.

Die beiden Commits haben die gleiche Commit-Zeit.

Fragen

  1. Hat vorher jemand erlebt?
  2. Was würde ein solches Verhalten verursachen?

Auflösung

Wir haben eine zusätzliche begehen danach den Kopf zu ändern, aber begehen YYYYYY noch nicht in der GitHub UI nicht anzeigen :(

+0

@sajibkahn - Die lokalen Commits geschoben wurden - wie bereits erwähnt, wenn Sie die Commit Hash in die GitHub begehen Viewer-URL zu injizieren, können Sie es sehen können. –

+0

Wer wird gedrängt? –

+0

@EdwardThomson Haha - Eine Zwangserneuerung wurde nicht durchgeführt, da das Commit vom System ausgeführt wurde, an dem wir arbeiten. –

Antwort

0

Sie die commit Geschichten in Github finden können auf diese Weise:

github -> Registerkarte Diagramme -> Netzwerk

überprüfen sie die id Aufträge verpflichten, sollte es gleiche mit..

Oder Sie können git log --oneline --decorate --graph --all für weitere Analyse verwenden.

Im lokalen Repo verwenden Sie git log --oneline --decorate --graph --all, der HEAD zeigt auf YYYYYY. Bitte überprüfen Sie die Eltern (Commit ID vor YYYYYY) ist XXXXXX oder nicht.

Wenn das übergeordnete Element XXXXXX ist, bedeutet dies, dass das lokale Commit YYYYYY nicht an github übergeben wird.

Wenn es Eltern ist nicht XXXXXX aber ZZZZZZ. Jetzt müssen Sie Github überprüfen, wenn der Elternteil von XXXXXX ZZZZZZ ist. Wenn dies der Fall ist, bedeutet das, wenn Sie XXXXXX und YYYYYY fast gleichzeitig auf github drücken, aber einer von ihnen ist fehlgeschlagen. Die Struktur wie:

A---B---…---Z---X 
      \ 
       Y 
+0

Hey @Marina, das Commit fehlte in dieser Liste, und leider kann ich das nicht als die auflösende Antwort auf meine Frage –

+0

markieren Ich habe meine Antwort für weitere Analysen aktualisiert, Sie können es übrigens herausfinden. –

+0

@ N15M0_jk, hat die Antwort Ihnen geholfen, das Problem zu lösen? –

Verwandte Themen