mirror of
https://github.com/danielkummer/git-flow-cheatsheet.git
synced 2024-11-23 00:13:45 +01:00
430 lines
21 KiB
HTML
430 lines
21 KiB
HTML
<!DOCTYPE html>
|
||
<html lang="en" xmlns="http://www.w3.org/1999/html">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||
<title>git-flow Φύλλο αναφοράς</title>
|
||
<link href='http://fonts.googleapis.com/css?family=Sansita+One' rel='stylesheet' type='text/css'>
|
||
<link rel="stylesheet" href="css/normalize.css" type="text/css" media="screen,print">
|
||
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen,print">
|
||
|
||
<script src="js/jquery-1.7.2.min.js"></script>
|
||
|
||
|
||
<script type="text/javascript">
|
||
var _gaq = _gaq || [];
|
||
_gaq.push ( [ '_setAccount', 'UA-33766650-1' ] );
|
||
_gaq.push ( [ '_trackPageview' ] );
|
||
_gaq.push ( [ 'gr._setAccount', 'UA-63807502-1' ] );
|
||
_gaq.push ( [ 'gr._trackPageview' ] );
|
||
|
||
(function () {
|
||
var ga = document.createElement ( 'script' );
|
||
ga.type = 'text/javascript';
|
||
ga.async = true;
|
||
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
|
||
var s = document.getElementsByTagName ( 'script' )[ 0 ];
|
||
s.parentNode.insertBefore ( ga, s );
|
||
}) ();
|
||
</script>
|
||
</head>
|
||
<body>
|
||
<div id="banner"><a href="https://github.com/danielkummer/git-flow-cheatsheet">Διακλάδωσέ με στο GitHub</a></div>
|
||
<header>
|
||
|
||
<h1 id="title">git-flow Φύλλο αναφοράς</h1>
|
||
|
||
<p id="author">
|
||
δημιουργήθηκε από τον <a href="http://twitter.com/0r1g4m14dd1c7">Daniel Kummer</a>
|
||
<a href="https://twitter.com/share" class="twitter-share-button" data-via="0r1g4m14dd1c7" data-size="large">Tweet</a>
|
||
<script>!function ( d, s, id ) {
|
||
var js, fjs = d.getElementsByTagName ( s )[ 0 ];
|
||
if ( !d.getElementById ( id ) ) {
|
||
js = d.createElement ( s );
|
||
js.id = id;
|
||
js.src = "//platform.twitter.com/widgets.js";
|
||
fjs.parentNode.insertBefore ( js, fjs );
|
||
}
|
||
} ( document, "script", "twitter-wjs" );</script>
|
||
</p>
|
||
<p id="desc">αποτελεσματικές διακλαδώσεις χρησιμοποιώντας το git-flow του <a href="http://nvie.com/">Vincent
|
||
Driessen</a></p>
|
||
|
||
<p id="translations">translations:
|
||
<a href="#" title="english">English</a> -
|
||
<a href="index.es_ES.html" title="spanish">Castellano</a> -
|
||
<a href="index.pt_BR.html" title="Brazilian Portugues">Brazilian Portugues</a> -
|
||
<a href="index.zh_TW.html" title="Traditional Chinese">繁體中文(Traditional Chinese)</a> -
|
||
<a href="index.zh_CN.html" title="Simplified Chinese">简体中文(Simplified Chinese)</a> -
|
||
<a href="index.ja_JP.html" title="日本語">日本語</a> -
|
||
<a href="index.tr_TR.html" title="Turkce">Türkçe</a> -
|
||
<a href="index.ko_KR.html" title="한국어">한국어(Korean)</a> -
|
||
<a href="index.fr_FR.html" title="Français">Français</a> -
|
||
<a href="index.it_IT.html" title="Italiano">Italiano</a> -
|
||
<a href="index.nl_NL.html" title="Nederlands">Nederlands</a> -
|
||
<a href="index.ru_RU.html" title="Russian">Русский (Russian)</a> -
|
||
<a href="index.de_DE.html" title="German">Deutsch (German)</a> -
|
||
<a href="index.ca_CA.html" title="Català">Català (Catalan)</a> -
|
||
<a href="index.ro_RO.html" title="Romanian">Română (Romanian)</a> -
|
||
<a href="index.el_GR.html" class="active" title="Ελληνικά (Greek)">Ελληνικά (Greek)</a> -
|
||
<a href="index.uk_UK.html" title="Ukrainian">Українська (Ukrainian)</a> -
|
||
<a href="#" class="active" title="Tiếng Việt">Tiếng Việt (Vietnamese)</a>
|
||
</p>
|
||
</header>
|
||
|
||
<div id="main">
|
||
|
||
|
||
<div class="scrollblock">
|
||
<h2>Σχετικά</h2>
|
||
|
||
<p>
|
||
Το git-flow είναι ένα σύνολο από επεκτάσεις για το git που παρέχουν υψηλού επιπέδου λειτουργίες σε εν-
|
||
αποθετήρια για το μοντέλο διακλαδώσεων του Vincent
|
||
Driessen.
|
||
<small><a href="http://nvie.com/posts/a-successful-git-branching-model/">περισσότερα</a></small>
|
||
</p>
|
||
<p class="divider">★ ★ ★</p>
|
||
|
||
<p>Αυτό το φύλλο αναφοράς, παρουσιάζει την βασική χρήση και τα αποτελέσματα των λειτουργιών του git-flow</p>
|
||
|
||
<p class="divider">★ ★ ★</p>
|
||
</div>
|
||
|
||
<div class="scrollblock">
|
||
<h2>Βασικές συμβουλές</h2>
|
||
<ul>
|
||
<li>Το Git flow παρέχει εξαιρετική βοήθεια στην γραμμή εντολών και στην έξοδο. Διαβάστε προσεκτικά για να
|
||
δείτε τι συμβαίνει...
|
||
</li>
|
||
<li>Το τερματικό <a href="http://www.sourcetreeapp.com/">Sourcetree</a> για OSX/Windows είναι ένα εξαιρετικό
|
||
γραφικό περιβάλλων εργασίας για git και παρέχει υποστήριξη για το git-flow
|
||
</li>
|
||
<li>Το Git-flow είναι μια λύση βασισμένη στη συγχώνευση (merge). Δεν αναπροσαρμόζει διακλαδώσεις
|
||
χαρακτηριστικών.
|
||
</li>
|
||
</ul>
|
||
<p class="divider">★ ★ ★</p>
|
||
</div>
|
||
|
||
|
||
<div class="scrollblock">
|
||
<h2><a name="setup" href="#setup">Εγκατάσταση</a></h2>
|
||
<ul>
|
||
<li>Είναι προϋπόθεση να έχετε ήδη εγκατεστημένο το git στον υπολογιστή σας.</li>
|
||
<li>Το Git flow λειτουργεί σε OSX, Linux και Windows</li>
|
||
</ul>
|
||
<p class="divider">★ ★ ★</p>
|
||
|
||
<div class="col-1">
|
||
<h3>OSX</h3>
|
||
<span>Homebrew</span>
|
||
<blockquote>
|
||
$ brew install git-flow
|
||
</blockquote>
|
||
<span>Macports</span>
|
||
<blockquote>
|
||
$ port install git-flow
|
||
</blockquote>
|
||
<h3>Linux</h3>
|
||
<blockquote>
|
||
$ apt-get install git-flow
|
||
</blockquote>
|
||
<h3>Windows (Cygwin)</h3>
|
||
<blockquote>
|
||
$ wget -q -O - --no-check-certificate
|
||
https://github.com/nvie/gitflow/raw/develop/contrib/gitflow-installer.sh | bash
|
||
</blockquote>
|
||
<p>Χρειάζεστε το wget και το util-linux για να εγκαταστήσετε το git-flow.</p>
|
||
</div>
|
||
<div class="col-2">
|
||
<p>
|
||
Για αναλυτικές οδηγίες εγκατάστασης του git flow παρακαλώ επισκεφτείτε το
|
||
<a href="https://github.com/nvie/gitflow/wiki/Windows">git flow wiki</a>.
|
||
</p>
|
||
<img src="img/download.png" alt="install git-flow"/>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="scrollblock">
|
||
<h2><a name="getting_started" href="#getting_started">Αρχίζοντας</a></h2>
|
||
|
||
<p>Το Git flow πρέπει να προετοιμαστεί, ώστε να προσαρμόσετε τις ρυθμίσεις του έργου σας.</p>
|
||
|
||
<p class="divider">★ ★ ★</p>
|
||
|
||
<div class="col-1">
|
||
<h3>Προετοιμασία</h3>
|
||
|
||
<p>Αρχίστε να χρησιμοποιείτε το git-flow προετοιμάζοντας το, μέσα σε ένα git εν-αποθετήριο (git repository):</p>
|
||
<blockquote>
|
||
git flow init
|
||
</blockquote>
|
||
<p>
|
||
Θα πρέπει να απαντήσετε μερικές ερωτήσεις σχετικά με τους κανόνες ονοματοδοσίας για τις διακλαδώσεις.<br/>
|
||
Συνιστάται η χρήση των τιμών που προτείνονται.
|
||
</p>
|
||
|
||
</div>
|
||
<div class="col-2">
|
||
<div class="initialize"></div>
|
||
<div class="lines-small"></div>
|
||
<div class="lines-open"></div>
|
||
<div class="lines-big"></div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="scrollblock">
|
||
<h2><a name="features" href="#features">Χαρακτηριστικά</a></h2>
|
||
|
||
<ul class="narrow">
|
||
<li>Δημιουργήστε νέα χαρακτηριστικά για επερχόμενες εκδόσεις</li>
|
||
<li>Τυπικά υπάρχει μόνο στα εν-αποθετήρια των προγραμματιστών</li>
|
||
</ul>
|
||
<p class="divider">★ ★ ★</p>
|
||
|
||
<div class="col-1">
|
||
<h3>Αρχίστε ένα νέο χαρακτηριστικό</h3>
|
||
|
||
<p>Η δημιουργία ενός νέου χαρακτηριστικού αρχίζει (δημιουργείται) από την διακλάδωση 'develop'</p>
|
||
|
||
<p>Αρχίστε την δημιουργία νέου χαρακτηριστικού με την εντολή</p>
|
||
<blockquote>
|
||
git flow feature start MYFEATURE
|
||
</blockquote>
|
||
<p>Αυτή η ενέργεια δημιουργεί μια νέα διακλάδωση για νέο χαρακτηριστικό βασισμένη στην διακλάδωση 'develop' και μεταπήδηση στην νέα διακλάδωση</p>
|
||
|
||
<!--
|
||
- Bump the version number now!
|
||
- Start committing last-minute fixes in preparing your release
|
||
- When done, run:
|
||
|
||
git flow release finish 'testrelease'
|
||
|
||
|
||
|
||
-->
|
||
</div>
|
||
<div class="col-2">
|
||
<div class="feature-start"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="scrollblock">
|
||
<div class="col-1">
|
||
<h3>Ολοκληρώστε την δημιουργία ενός νέου χαρακτηριστικού.</h3>
|
||
|
||
<p>
|
||
Αυτή η ενέργεια κάνει τα ακόλουθα
|
||
</p>
|
||
<ul>
|
||
<li>Συγχωνεύει το MYFEATURE στο 'develop'</li>
|
||
<li>Αφαιρεί την διακλάδωση που δημιουργήθηκε για το νέο χαρακτηριστικό</li>
|
||
<li>Μεταπηδά ξανά στην διακλάδωση 'develop'</li>
|
||
</ul>
|
||
|
||
<blockquote>
|
||
git flow feature finish MYFEATURE
|
||
</blockquote>
|
||
</div>
|
||
<div class="col-2">
|
||
<div class="feature-end"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="scrollblock">
|
||
<div class="col-1">
|
||
<h3>Δημοσιεύστε ένα χαρακτηριστικό</h3>
|
||
|
||
<p>
|
||
Αναπτύσσετε ένα χαρακτηριστικό της εφαρμογής σας σε συνεργασία με άλλους προγραμματιστές;<br/>
|
||
Δημοσιεύστε το χαρακτηριστικό σας στον απομακρυσμένο server, ώστε να μπορούν οι άλλοι προγραμματιστές να το χρησιμοποιήσουν.
|
||
</p>
|
||
|
||
<blockquote>
|
||
git flow feature publish MYFEATURE
|
||
</blockquote>
|
||
</div>
|
||
<div class="col-2">
|
||
<div class="feature-publish"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="scrollblock">
|
||
<div class="col-1">
|
||
<h3>Πάρτε ένα δημοσιευμένο χαρακτηριστικό</h3>
|
||
|
||
<p>
|
||
Πάρτε ένα δημοσιευμένο χαρακτηριστικό από τον απομακρυσμένο server που το δημοσίευσε κάποιος άλλος προγραμματιστής.
|
||
</p>
|
||
|
||
<blockquote>
|
||
git flow feature pull origin MYFEATURE
|
||
</blockquote>
|
||
|
||
<p>Μπορείτε να παρακολουθείτε ένα χαρακτηριστικό στον απομακρυσμένο server (origin) χρησιμοποιώντας την εντολή<code> git flow feature track MYFEATURE</code></p>
|
||
</div>
|
||
<div class="col-2">
|
||
<div class="feature-pull"></div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="scrollblock">
|
||
<h2><a name="release" href="#release">Δημιουργήστε μια νέα έκδοση</a></h2>
|
||
|
||
<ul>
|
||
<li>Υποστηρίζει την προετοιμασία μια έκδοσης για παραγωγή</li>
|
||
<li>Επιτρέπει μικρής σημασίας επιδιορθώσεις σφαλμάτων και προετοιμάζει τα μέτα-δεδομένα για την έκδοση</li>
|
||
</ul>
|
||
<p class="divider">★ ★ ★</p>
|
||
|
||
<div class="col-1">
|
||
<h3>Αρχίστε μια έκδοση</h3>
|
||
|
||
<p>Για να αρχίσετε μια νέα έκδοση, χρησιμοποιήστε την εντολή του git flow, release. Η εντολή αυτή δημιουργεί μια νέα διακλάδωση, από την διακλάδωση 'develop'</p>
|
||
|
||
<blockquote>
|
||
git flow release start RELEASE [BASE]
|
||
</blockquote>
|
||
<p>Μπορείτε προαιρετικά να εισάγετε ως <code>[BASE]</code> το sha-1 hash ενός commit για να αρχίσετε την νέα έκδοση το συγκεκριμένο commit. Το commit
|
||
πρέπει να είναι στην διακλάδωση 'develop'.</p>
|
||
|
||
<p class="divider">★ ★ ★</p>
|
||
|
||
<p>Είναι καλό να δημοσιεύσετε την διακλάδωση έκδοσης, μετά την δημιουργία της, ώστε να επιτρέψετε commits έκδοσης από άλλους προγραμματιστές.
|
||
Μπορείτε να το κάνετε αυτό, με τον ίδιο τρόπο που δημοσιεύεται τα νέα χαρακτηριστικά, με την εντολή:</p>
|
||
<blockquote>
|
||
git flow release publish RELEASE
|
||
</blockquote>
|
||
<p>(Μπορείτε να παρακολουθείτε απομακρυσμένες εκδόσεις με την εντολή <br/><code>git flow release track RELEASE</code>)</p>
|
||
</div>
|
||
<div class="col-2">
|
||
<div class="release-start"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="scrollblock">
|
||
<div class="col-1">
|
||
<h3>Ολοκληρώνοντας μια νέα έκδοση</h3>
|
||
|
||
<p>Η ολοκλήρωση μιας νέας έκδοσης είναι ένα από τα μεγάλα βήματα στις διακλαδώσεις του git γιατί γίνονται πολλές ενέργειες μαζί:</p>
|
||
<ul>
|
||
<li>Συγχωνεύει την διακλάδωση της έκδοσης με την διακλάδωση 'master'</li>
|
||
<li>Βάζει την ετικέτα στην έκδοση με το όνομα της</li>
|
||
<li>Συγχωνεύει την έκδοση με την διακλάδωση 'develop'</li>
|
||
<li>Διαγράψει την διακλάδωση της έκδοσης</li>
|
||
</ul>
|
||
<blockquote>
|
||
git flow release finish RELEASE
|
||
</blockquote>
|
||
<p>Μην ξεχάσετε να σπρώξετε τις ετικέτες σας με την εντολή <code>git push --tags</code></p>
|
||
|
||
</div>
|
||
<div class="col-2">
|
||
<div class="release-end"></div>
|
||
|
||
</div>
|
||
</div>
|
||
|
||
<div class="scrollblock">
|
||
<h2><a name="hotfixes" href="#hotfixes">Άμεσες επιδιορθώσεις (Hotfixes)</a></h2>
|
||
|
||
<ul>
|
||
<li>
|
||
Οι άμεσες επιδιορθώσεις προκύπτουν από την ανάγκη της άμεσης επέμβασης σε μια ανεπιθύμητη κατάσταση της τρέχουσας έκδοσης στο λογισμικό παραγωγής.
|
||
</li>
|
||
<li>
|
||
Μπορεί η νέα διακλάδωση να δημιουργηθεί από την αντίστοιχη ετικέτα στην κεντρική (master) διακλάδωση που χαρακτηρίζει την έκδοση παραγωγής.
|
||
</li>
|
||
</ul>
|
||
<p class="divider">★ ★ ★</p>
|
||
|
||
<div class="col-1">
|
||
<h3>git flow hotfix start</h3>
|
||
|
||
<p>Όπως και οι άλλες εντολές του git flow, μία άμεση επιδιόρθωση αρχίζει με</p>
|
||
<blockquote>
|
||
git flow hotfix start VERSION [BASENAME]
|
||
</blockquote>
|
||
<p>Η επιλογή VERSION, χαρακτηρίζει το όνομα της νέας άμεσης επιδιόρθωσης. Προαιρετικά μπορείτε να ορίσετε ένα όνομα βάσης για να αρχίσετε από εκεί.</p>
|
||
</div>
|
||
<div class="col-2">
|
||
<div class="hotfix-start"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="scrollblock">
|
||
<div class="col-1">
|
||
<h3>Ολοκληρώνοντας μία άμεση επιδιόρθωση</h3>
|
||
|
||
<p>
|
||
Με την ολοκλήρωση μιας άμεσης επιδιόρθωσης, η διακλάδωση συγχωνεύεται με την διακλάδωση develop και master.
|
||
Επιπλέον η κεντρική διακλάδωση (master) αποκτά την ετικέτα του ονόματος της άμεσης επιδιόρθωσης.
|
||
</p>
|
||
<blockquote>
|
||
git flow hotfix finish VERSION
|
||
</blockquote>
|
||
</div>
|
||
<div class="col-2">
|
||
<div class="hotfix-end"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div>
|
||
<div class="col-1"></div>
|
||
<div class="col-2">
|
||
<div class="lines-close"></div>
|
||
<div class="lines-small-end"></div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="scrollblock">
|
||
<h2><a name="commands" href="#commands">Εντολές</a></h2>
|
||
<img src="img/git-flow-commands.png" alt="git-flow commands"/>
|
||
</div>
|
||
|
||
<div class="scrollblock">
|
||
<h2>Σημειώσεις</h2>
|
||
|
||
<p class="divider">★ ★ ★</p>
|
||
<ul>
|
||
<li>Εδώ δεν καλύπτονται όλες οι διαθέσιμες εντολές, αλλά μόνο οι πιο σημαντικές</li>
|
||
<li>Μπορείτε να συνεχίσετε την χρήση του git και όλες τις εντολές του κανονικά όπως τις γνωρίζετε, το git flow είναι απλά μια συλλογή με εργαλεία.</li>
|
||
<li>Το χαρακτηριστικό 'support' είναι ακόμα σε κατάσταση beta, δεν σας συμβουλεύουμε να το χρησιμοποιήσετε</li>
|
||
<li>Αν σας αρέσει να παρέχετε μεταφράσεις, θα είναι χαρά μου να τις ενσωματώσω</li>
|
||
</ul>
|
||
<p class="divider">★ ★ ★</p>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<footer>
|
||
<div class="scrollblock">
|
||
<h2><a name="comments" href="#comments">Σχόλια</a></h2>
|
||
|
||
<div id="disqus_thread"></div>
|
||
</div>
|
||
</footer>
|
||
|
||
<script type="text/javascript">
|
||
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
|
||
var disqus_shortname = 'gitflowcheatsheet'; // required: replace example with your forum shortname
|
||
|
||
/* * * DON'T EDIT BELOW THIS LINE * * */
|
||
(function () {
|
||
var dsq = document.createElement ( 'script' );
|
||
dsq.type = 'text/javascript';
|
||
dsq.async = true;
|
||
dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
|
||
(document.getElementsByTagName ( 'head' )[ 0 ] || document.getElementsByTagName ( 'body' )[ 0 ]).appendChild ( dsq );
|
||
}) ();
|
||
</script>
|
||
<noscript>Παρακαλώ ενεργοποιείστε την JavaScript για να δείτε τα <a href="http://disqus.com/?ref_noscript">σχόλια που υποστηρίζονται από το Disqus.</a>
|
||
</noscript>
|
||
<a href="http://disqus.com" class="dsq-brlink">τα σχόλια παρέχονται από το <span class="logo-disqus">Disqus</span></a>
|
||
</body>
|
||
</html>
|