Hallo, Entdecker! An dieser Seite wird aktiv gearbeitet, oder sie wird noch übersetzt. Die neuesten und genauesten Informationen finden Sie in unserer englischsprachigen Dokumentation.
Artikelversion: Enterprise Server 2.15

Diese Version von GitHub Enterprise wird eingestellt am Diese Version von GitHub Enterprise wurde eingestellt am 2019-10-16. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. For better performance, improved security, and new features, upgrade to the latest version of GitHub Enterprise. For help with the upgrade, contact GitHub Enterprise support.

Unterstützung für Subversion-Clients

Der Zugriff auf GitHub-Repositorys kann von Git- und Subversion (SVN)-Clients erfolgen. In diesem Artikel erhalten Sie Informationen zur Ausführung eines Subversion-Clients auf GitHub sowie zu einigen häufigen Problemen, die in Verbindung mit Subversion auftreten können.

GitHub unterstützt Subversion-Clients über das HTTPS-Protokoll. Zur Übertragung von SVN-Befehlen an GitHub wird eine Subversion-Bridge verwendet.

Auf GitHub unterstützte Subversion-Funktionen

Auschecken

Ihr erster Schritt in Verbindung mit Subversion ist der Checkout. Da das Arbeitsverzeichnis, in dem Sie Dateien bearbeiten, in Git-Klonen getrennt von den Repository-Daten geführt wird, enthält das Arbeitsverzeichnis jeweils nur einen Branch.

Subversion-Checkouts unterscheiden sich hier: In Subversion sind die Repository-Daten in den Arbeitsverzeichnissen enthalten, weswegen es für jeden Branch und jedes Tag, das Sie ausgecheckt haben, ein eigenes Arbeitsverzeichnis gibt. Bei Repositorys mit vielen Branches und Tags kann das Auschecken zu einem Bandbreitenproblem werden. In diesem Fall empfiehlt sich zunächst ein teilweiser Checkout.

  1. On GitHub Enterprise, navigate to the main page of the repository.

  2. Under the repository name, click Clone or download.

    Clone or download button

  3. To clone the repository using HTTPS, under "Clone with HTTPS", click . To clone the repository using an SSH key click Use SSH, then click .

    Clone URL button

  4. Erstellen Sie einen leeren Checkout des Repositorys:

    $ svn co --depth empty https://github.com/user/repo> Checked out revision 1.
    $ cd repo
  5. Get the trunk branch. The Subversion bridge maps trunk to the Git HEAD branch (which is usually master).

    $ svn up trunk
    > A    trunk
    > A    trunk/README.md
    > A    trunk/gizmo.rb
    > Updated to revision 1.
  6. Get an empty checkout of the branches directory. This is where all of the non-HEAD branches live, and where you'll be making feature branches.

    $ svn up --depth empty branches
    Updated to revision 1.

Creating branches

You can also create branches using the Subversion bridge to GitHub.

From your svn client, make sure "master" is current by updating trunk:

$ svn up trunk
> At revision 1.

Nun können Sie svn copy zur Erstellung eines neuen Branches verwenden:

$ svn copy trunk branches/more_awesome
> A    branches/more_awesome
$ svn commit -m 'Added more_awesome topic branch'
> Adding    branches/more_awesome

> Committed revision 2.

Im Branch-Dropdown des Repositorys können Sie überprüfen, ob der neue Branch erstellt wurde:

Branch-Snapshot

Dies können Sie auch über die Befehlszeile überprüfen:

$ git fetch
> From https://github.com/user/repo/
> * [new branch]    more_awesome -> origin/more_awesome

Commits an Subversion

Nachdem Sie einige Features hinzugefügt und Bugs behoben haben, möchten Sie diese Änderungen auf GitHub festschreiben. Dies funktioniert genauso, wie Sie es von Subversion gewohnt sind. Verwenden Sie nach der Bearbeitung Ihrer Dateien svn commit, um Ihre Änderungen festzuschreiben:

$ svn status
> M    gizmo.rb
$ svn commit -m 'Guard against known problems'
> Sending    more_awesome/gizmo.rb
> Transmitting file data .
> Committed revision 3.
$ svn status
> ?    test
$ svn add test
> A    test
> A    test/gizmo_test.rb
$ svn commit -m 'Test coverage for problems'
> Adding    more_awesome/test
> Adding    more_awesome/test/gizmo_test.rb
> Transmitting file data .
> Committed revision 4.

Zwischen Branches wechseln

Um zwischen Branches zu wechseln, werden Sie vermutlich zunächst trunk auschecken:

$ svn co --depth empty https://github.com/user/repo/trunk

Danach können Sie zu einem anderen Branch wechseln:

$ svn switch https://github.com/user/repo/branches/more_awesome

Git-Commit-SHA für einen Subversion-Commit finden

Der Subversion-Server von GitHub stellt die Git-Commit-SHA für jeden Subversion-Commit bereit.

Um diese Commit-SHA zu finden, sollten Sie nach der nicht versionierten Remote-Eigenschaft git-commit fragen.

$ svn propget git-commit --revprop -r HEAD https://github.com/user/repo05fcc584ed53d7b0c92e116cb7e64d198b13c4e3

Mit dieser Commit-SHA können Sie beispielsweise nach dem zugehörigen Git-Commit auf GitHub suchen.

Weiterführende Informationen

Menschliche Unterstützung einholen

Sie können das Gesuchte nicht finden?

Kontakt