Freigeben über


Pushen von Visual Studio zu einem Remotebranch

Nachdem Sie sich bei GitHub authentifiziert haben, kann Visual Studio Ihren GitHub-Workflow verbessern. Eine dieser Verbesserungen ist die Möglichkeit, ein lokales Projekt mit einem einzigen Klick direkt auf GitHub zu übertragen (auch bekannt als Veröffentlichung). Die letzte Phase in einem einfachen Git-Workflow besteht darin, Änderungen an Ihre Remote zu übertragen.

Ein Remote ist ein Verweis auf ein Git-Repository, das nicht auf dem lokalen Computer gehostet wird und standardmäßig einen Namen wie origin/main (oder origin/master) trägt, wobei "origin" der Standardname für ein Remote ist. Weitere Informationen zu dieser Terminologie finden Sie auf der Git-Website Git Branching – Remote Branches Seite.

Während dieser Artikel auf GitHub-Repositorys verweist, können Sie remote mit dem Git-Anbieter Ihrer Wahl arbeiten, z. B. GitHub, GitLab oder Azure DevOps.

Folgendermaßen funktioniert das Pushen in einen Remotebranch in Visual Studio.

  1. Stellen Sie sicher, dass eine Datei für die Arbeit geöffnet ist, die sich in einem zuvor erstellten oder geklonten Repository befindet.

  2. Nehmen Sie eine Änderung an der Datei vor, speichern Sie sie, wählen Sie die Registerkarte Git-Änderungen aus, und schreiben Sie die Änderung fest.

  3. Beachten Sie im Fenster Git Changes den Linktext, der die Anzahl der eingehenden und ausgehenden Commits enthält. Im folgenden Beispiel lautet der Linktext 1 ausgehend/0 eingehend.

    Das Fenster „Git-Änderungen” mit hervorgehobenem Link-Text für ausgehende/eingehende Verknüpfungen in Visual Studio 2022.

    Der Text „outgoing“ stellt die Anzahl der Commits dar, die noch nicht an das Remote-Repository gesendet wurden, während der Text „incoming“ die Commits darstellt, die abgerufen, aber noch nicht aus dem Remote-Repository gezogen wurden.

  4. Wählen Sie zum Pushen zum Remotebranch die Schaltfläche Push (Pfeil nach oben) aus, oder wählen Sie im Menü Git die Option Push aus.

    Wenn sich die lokale Verzweigung hinter der Remoteverzweigung befindet, lässt Git keinen normalen Push zu, und Sie werden aufgefordert, die nächsten Schritte zu erledigen. Sie haben folgende Möglichkeiten:

    1. Ziehen und dann Drücken. Verwenden Sie diesen Vorgang, wenn Sie die neuesten Änderungen am Remote-Branch abrufen und dann Ihre Änderungen an den Remote-Branch übertragen möchten. Dies funktioniert gut, wenn Sie keine widersprüchlichen Änderungen haben und auf dem neuesten Stand sein möchten.

    2. Ziehen. Aktualisiert den lokalen Branch, aber pusht Ihre Änderungen nicht. Mit dieser Option können Sie die Änderungen überprüfen oder Konflikte lösen, bevor Sie versuchen, Ihre Änderungen erneut zu übertragen.

    3. (Wenn Sie es aktivieren) Force push. Schieben Sie Ihre Änderungen, ohne Ihren lokalen Branch zu aktualisieren.

      Um einen Force-Push zu aktivieren, gehen Sie zu Extras>Options>All Settings>Source Control>Git Settings, und aktivieren Sie "Push --force-with-lease aktivieren". Die Absicht dieser Option besteht darin, es Ihnen zu ermöglichen, einen Push zu versuchen, auch wenn Änderungen im Remote-Repository vorgenommen wurden, ohne die anderen Änderungen zu überschreiben. Weitere Informationen zu dieser Option finden Sie in dieser Stackoverflow-Frage und der offiziellen Git-Pushdokumentation.

      Git-Einstellung

      Wenn Sie diese Option aktivieren, ist die Option Pull in der Eingabeaufforderung nicht verfügbar. Sie können weiterhin normal ziehen, wie in git fetch, pull, push & sync beschrieben.

    4. Abbrechen. Nichts geschieht. Die Änderungen vom Remote-Branch werden nicht geholt, und Ihre Änderungen werden nicht gepusht. Ihre lokale Filiale bleibt veraltet.