2016-07-30 30 views
3

Ich habe ein Problem beim Erstellen von Releases in unserem öffentlichen oder privaten Repository in GitHub? Wie funktioniert es mit Windows-Cmd oder Linux-Terminal? Gibt es spezielle Befehle dafür?Wie erstellt man Releases für das öffentliche oder private Repository in GitHub?

+0

Vielleicht sollte dies Ihnen helfen https://help.github.com/articles/creating-releases/. –

+0

@ julian salas Vielen Dank. Der von Ihnen zur Verfügung gestellte Artikel ist sehr informativ! – kaviranga

+0

ok mit Vergnügen. –

Antwort

3

Das folgende Beispiel zeigt Ihnen, wie Sie einen einzigen Release-Zyklus gemacht, zuerst Sie sollten ein zentrales Repository erstellen, dann erstellen Sie einen Entwicklungszweig.

Sie erstellen ein entwickeln Zweig

git branch develop
git push -u origin develop

Dieser Zweig die komplette Geschichte des Projekts enthalten, jetzt während Ihre master neue Version enthalten. Ihr Team sollte nun das zentrale Repository klonen und einen Tracking-Zweig für develop erstellen.

Sie erstellen ein Zweig-Tracking für

git clone ssg: //[email protected]/path/
git checkout -b develop origin/develop

Jeder entwickeln hat jetzt eine lokale Kopie der historischen Filialen aufgebaut. Also beschließen Sie, ein neues Feature zu machen. Dafür erstellen Sie separate Zweige für Ihre jeweiligen Funktionen mit Basis eines Ihrer Entwicklungszweige.

Sie beginnen ein neues Feature

git checkout -b some-feature develop

Sie können Commits zum Funktionszweig hinzufügen, wie Sie möchten, dann:

git status 
git add <some-file> 
git commit 

Sie endet Ihre Funktion

Nachdem Sie neue Funktionen hinzugefügt haben, entscheiden Sie dass Ihre Funktion bereit sind, jetzt können Sie es in Ihrem lokalen develop verschmelzen und an das zentrale Repository schieben, etwa so:

git pull origin develop 
git checkout develop 
git merge some-feature 
git push 
git branch -d some-feature 

Der erste Befehl macht die Entwicklung sicher auf dem neuesten Stand ist, bevor Sie in die fusionieren Feature. Beachten Sie, dass Features niemals direkt in master zusammengeführt werden sollten.

Sie beginnen, ein Release

vorzubereiten, während andere entwickeln ist auf seine Funktion arbeiten, können Sie an beginnt der erste offizielle release des Projekts vorzubereiten, Sie können einen neuen Zweig zu verwenden, um die Freisetzung Vorbereitungen zu verkapseln. Dieser Schritt ist auch, wo die Versionsnummer der Freigabe hergestellt wird:

git checkout -b release-0.1 develop 

Dieser Zweig ist ein Ort, um die Freigabe zu bereinigen, alles zu testen, aktualisieren Sie die Dokumentation und macht jede andere Art der Vorbereitung auf die bevorstehende Veröffentlichung. Es ist wie ein Feature-Zweig, der dem Polieren des Releases gewidmet ist.

Sie beendet den Release

Sobald die Freigabe bereit zu versenden ist, Sie es in Master verschmilzt und develop, dann ist die branch.It wichtigen Release löschen in develop fusionieren zurück, weil wichtige Updates hinzugefügt wurden in den Release-Zweig und sie müssen für neue Funktionen zugänglich sein. Gefällt Ihnen:

git checkout master 
git merge release-0.1 
git push 
git checkout develop 
git merge release-0.1 
git push 
git branch -d release-0.1 

Sie könnten wissen, dass Release-Zweige als Puffer zwischen Feature-Entwicklung und öffentlichen Releases fungieren. Ist gute Idee, dass whenevet Sie etwas in master verschmelzen, sollten Sie die commint für eine einfache Referenz markieren:

git tag -a 0.1 -m "Initial public release" master 
git push --tags 

Wenn Sie eine bessere Erklärung möchten, besuchen Sie diesen Link: https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow.

+0

Das ist großartig! Ich werde Ihre Lösung so schnell wie möglich überprüfen und Ihnen nochmals danken. Das ist was ich will ! – kaviranga

+0

Aha! Ich habe mich über den Befehl "git checkout" verwirrt und deine Antwort hat eine großartige Erklärung dafür! – kaviranga

2

Releases sind ein Feature von GitHub und sind kein Feature von general git (ähnlich wie andere Github-Extra-Features wie Issues und Pull-Requests). Die Benutzer haben jedoch Projekte erstellt, mit denen Sie GitHub-Versionen über die Befehlszeile erstellen können. Im Folgenden sind ein paar, die ich finden konnte:

  1. Python-Implementierung von GitHub Freigabe: https://github.com/aktau/github-release

  2. JS Implementierung von GitHub Freigabe: https://github.com/ungoldman/gh-release

+0

Vielen Dank für die Info. Das ist interessant und sehr hilfreich! – kaviranga