2016-10-15 8 views
0

Ich bin neu in Git. Auf GitHub habe ich ein Dritt-Projekt gespendet, um Beiträge zu leisten. Jedes Mal, wenn neue PRs mit ihrem Master zusammengeführt werden, muss ich meinen Fork aktualisieren, um aktuell zu bleiben. Auf der Homepage meines gegabelten Repositorys klicke ich auf New pull request, tausche die Basis- und Kopfgabeln, erstelle eine neue PR und füge sie zu meiner eigenen Kopie zusammen.Wie kann ich den Commit-Verlauf löschen, wenn ich einen PR auf GitHub einreiche?

Allerdings bemerkte ich, dass dies eine immer größere Liste von Commits in der Commit-Geschichte erstellt jedes Mal, wenn ich eine PR einreiche. Wie konsolidiere ich all diese Commits in einem vor oder nach der Einreichung einer PR? Ich benutze Visual Studio 2015.

Ich denke, ich muss commit squash, aber ich weiß nicht, wie das auf VS zu tun.

Antwort

0

Sie sollten keine Pull-Requests quetschen oder verwenden, stattdessen fügen Sie die Remote für das ursprüngliche Repo zu Ihrem Projekt hinzu, und Sie können dann auf ihren neuesten Code verweisen.

git remote add theirs https://www.github.com/original/project.git 
git fetch theirs 

Jetzt in Visual Studio (oder von der Kommandozeile) können Sie mit der rechten klicken Sie auf den ihrigen/Master-Zweig und wählen Sie auf rebase. Dies wird Ihre lokale Geschichte neu schreiben und Ihre Änderungen auf ihren neuesten Code wiederholen.

Es kann erforderlich sein, Push zu Ihrem eigenen Github-Fork zu zwingen, da Rebasing dazu führt, dass sich Ihre lokalen Git-Commits in einigen Fällen ändern. Eventuell müssen Sie Änderungen zusammenführen, wenn die Rebase ausgeführt wird, da ihre neueste Version die führende ist und Ihre lokalen Commits über die neueste Version ihres Codes hinaus wiedergegeben werden.

Dieser Prozess gibt Ihnen die sauberste Geschichte, die ihre letzten Änderungen enthält.

Wenn der Rebase/force-push dich entmutigt, ist es auch möglich, eine normale Zusammenführung von ihrem/master in deinen lokalen Zweig durchzuführen. Stellen Sie sicher, dass Sie nach dem Hinzufügen des Remotes die neuesten Änderungen abrufen, und klicken Sie dann mit der rechten Maustaste auf ihren Masterzweig in Visual Studio und wählen Sie "Zusammenführen", um ihre Änderungen in Ihr lokales Arbeitsverzeichnis einzufügen.

Verwandte Themen