2016-07-05 13 views
0

Ich bin ein ziemlich seltsames Problem mit bit bucket mit, wenn ich einen Dienstverweis hinzufügen zu einem Projekt. Zusammenfassend, wenn ich nach dem Hinzufügen der Service-Referenz eine Pull-Anfrage erstelle, bekomme ich eine Warnung, die This pull request has conflicts. hervorhebt. Also gehe ich zur Lösung der Konflikte, aber wenn ich die entsprechenden Befehle ausführe, werde ich informiert, dass alles auf dem neuesten Stand ist. Ist es möglich, dass git bestimmte Dateien ignoriert, die im Bit-Bucket aufgenommen werden? Hat jemand vorher irgendwelche Erfahrungen in diesem Bereich gemacht?Bit Bucket ‚Diese Pull-Anforderung hat Konflikte‘, sondern git lokal heißt es ‚up-to-date‘

Ich werde es brechen alle oben näher ein bisschen, einen Schritt für Schritt Diagnose hervorzuheben, was ich tue:

  1. Dienstverweis hinzufügen
  2. Commit & Schieben Sie die Änderungen zu projizieren
  3. erstellen Anfrage Pull
  4. Bit Eimer Konflikte You must resolve the conflicts before you can merge
  5. sind highlights ich die folgenden Befehle mit den folgenden Ergebnissen führen:

git fetch origin develop

git checkout feature/my-branch

git merge FETCH_HEAD

Bereits up-to-date

Jede mögliche Hilfe bei diesem Problem würde geschätzt, wie ich scheinen zu haben getroffen Sackgasse!

EDIT

ich es weiter nach unten verengt haben, gibt es eine Reihe von GenericObjectDataSource Dateien hinzugefügt, wenn die Referenz hinzugefügt, die sehr lange Dateinamen haben (nur für den Fall gibt es eine maximale Länge jemand weiß in bit bucket oder git). Sie sehen aus wie folgt, es ist, wenn ich diese Dateien in prüfen, ob die Konfliktmeldung angezeigt:

<?xml version="1.0" encoding="utf-8"?> 
<!-- 
    This file is automatically generated by Visual Studio .Net. It is 
    used to store generic object data source configuration information. 
    Renaming the file extension or editing the content of this file may 
    cause the file to be unrecognizable by the program. 
--> 
<GenericObjectDataSource DisplayName="CreateJobFromResponse" Version="1.0" xmlns="urn:schemas-microsoft-com:xml-msdatasource"> 
    <TypeInfo>Namespace.NamespaceChild.NamespaceGrandChild.NamespaceGreatGrandChild.CreateJobFromResponse, Service References.MyServiceReferences.Reference.cs.dll, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null</TypeInfo> 
</GenericObjectDataSource> 
+0

git fetch nicht zusammenführen Änderungen zu lokalen entwickeln Zweig. Sie sollten vor dem Auschecken zu einem neuen Zweig zusammenführen – Damian0o

+0

Die Zusammenführung muss durch eine Pull-Anforderung gehen, kann nicht direkt – ThePower

+0

natürlich getan werden.Sie sollten Zweig entwickeln zu Ihrem Feature Zweig zuerst – Damian0o

Antwort

1

Nach vielen Stunden zu graben und googeln habe ich endlich das Problem gefunden. Ich hatte eine Ahnung, dass es möglicherweise mit der Länge des Dateinamens oder des Pfades auf dem Server zusammenhängt, der zu lang ist.

Es scheint, dass, wenn hosting git auf einem Windows-Server standardmäßig der Dateipfad 260 Zeichen nicht überschreiten darf, es sei denn, dies in einem Befehl angeben.

Ich fand this answer, die hervorgehoben, was erforderlich war, um mein Problem zu beheben.

git config --system core.longpaths true 
1

Versuchen Sie, diese Sequenz

git checkout develop 
git pull --rebase origin develop 
git checkout feature/my-branch 
git rebase develop 
+0

Noch das gleiche Problem leider habe ich es auf einige XML-Dateien eingegrenzt, die beim Hinzufügen der Referenz hinzugefügt werden – ThePower