<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://www.dotnetzone.gr:443/cs/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Visual Studio Team Edition</title><link>https://www.dotnetzone.gr:443/cs/forums/79/ShowForum.aspx</link><description>Θέματα σχετικά με το Visual Studio Team Edition και την υλοποίηση του MSF v4.0 μέσα από αυτό</description><dc:language>el</dc:language><generator>CommunityServer 2.1 SP3 (Build: 20423.1)</generator><item><title>Απ: Re: Απ: Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/50928.aspx</link><pubDate>Mon, 25 May 2009 16:35:23 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:50928</guid><dc:creator>manosB</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/50928.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=50928</wfw:commentRss><description>Για να είμαι όμως και δίκαιος να αναφέρω το μεγαλύτερο πρόβλημα του SVN είναι το copy- paste- rename φακέλων μέσα στο PRoject. Αυτό απαγορεύεται δια ροπάλου διότι μετά είναι πολύ δύσκολο να το συγχρονίσεις με το repository. Αντιγράφω από τη WikiPedia (&lt;a href="http://en.wikipedia.org/wiki/Subversion_(software)"&gt;http://en.wikipedia.org/wiki/Subversion_(software)&lt;/a&gt;) &amp;nbsp;Με απλά αρχεία δεν έχεις πρόβλημα.&lt;div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family:-webkit-sans-serif;line-height:19px;"&gt;A known problem in Subversion is the implementation of the file and directory&amp;nbsp;&lt;b&gt;rename&lt;/b&gt;&amp;nbsp;operation. Subversion currently implements the renaming of files and directories as a 'copy' to the new name followed by a 'delete' of the old name. Only the names are changed, all data relating to the edit history remains the same, and Subversion will still use the old name in older revisions of the "tree". However, Subversion may be confused when files are modified and moved in the same commit. This can also cause problems when a move conflicts with edits made elsewhere.This problem was expected to be addressed in the Subversion 1.5 release, but only some use cases were addressed while the problems with some other use cases were postponed.&lt;sup id="cite_ref-9" class="reference" style="line-height:1em;font-weight:normal;font-style:normal;"&gt;&lt;span&gt;&lt;/span&gt;&lt;/sup&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;font class="Apple-style-span" face="-webkit-sans-serif" size="3"&gt;&lt;span class="Apple-style-span" style="font-size:11px;line-height:11px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font class="Apple-style-span" face="-webkit-sans-serif" size="3"&gt;&lt;span class="Apple-style-span" style="font-size:11px;line-height:11px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font class="Apple-style-span" face="-webkit-sans-serif" size="3"&gt;&lt;span class="Apple-style-span" style="font-size:11px;line-height:11px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font class="Apple-style-span" face="-webkit-sans-serif" size="3"&gt;&lt;span class="Apple-style-span" style="font-size:11px;line-height:11px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font class="Apple-style-span" face="-webkit-sans-serif" size="3"&gt;&lt;span class="Apple-style-span" style="font-size:11px;line-height:11px;"&gt;&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;div&gt;&lt;br&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description></item><item><title>Απ: Re: Απ: Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/50927.aspx</link><pubDate>Mon, 25 May 2009 16:27:27 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:50927</guid><dc:creator>manosB</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/50927.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=50927</wfw:commentRss><description>Εγώ προτείνω SVN.&amp;nbsp;&lt;span class="Apple-style-span" style="font-family:'Lucida Grande';font-size:12px;font-weight:bold;line-height:16px;"&gt;TortoiseSVN&lt;/span&gt;&lt;div&gt;Συνδιασμό &amp;nbsp;με ένα Visual εργαλείο για το VS. Αυτό που χρησιμοποιώ είναι το visualSVN&amp;nbsp;&lt;a href="http://www.visualsvn.com/visualsvn/"&gt;http://www.visualsvn.com/visualsvn/&lt;/a&gt;. Δεν είναι τσάμπα αλλά νομίζω ότι είναι απαραίτητο να έχεις SVN μέσα από το VS.&amp;nbsp;&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;&lt;div&gt;Όσο για το Server κομμάτι SNV στήνεται πολύ εύκολα σε οποιαδήποτε έκδοση Windows. Εγώ παίζω σε Server 2003 και 2008. Το backup είναι απροβλημάτιστο, απλό file copy και το στήσιμο είναι πιο εύκολο από το να βάζεις το Office. Αυτή η απλότητα του είναι και το μεγάλο του πλεονέκτημα σε σχέση με Microsoft λύση!!!&lt;/div&gt;&lt;div&gt;&lt;br&gt;&lt;/div&gt;</description></item><item><title>Απ: Re: Απ: Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/50904.aspx</link><pubDate>Sat, 23 May 2009 05:21:29 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:50904</guid><dc:creator>sakis_drm</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/50904.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=50904</wfw:commentRss><description>Linus Torvalds μιλάει για το git και για ποιό λόγο ξήλωσε το SVN. Ουσιαστικά για το braching/merging.&lt;br&gt;http://www.youtube.com/watch?v=4XpnKHJAok8&lt;br&gt;&lt;br&gt;Μάλον το θέμα branching/merging είναι πολύ σοβαρό.&lt;br&gt;Μπορεί κάποιος να εξηγήσει πρακτικά (ή να παραπέμψει σε παράδειγμα) για το τι συμβαίνει στο κομμάτι του κώδικα που έχει αλλάξει για να καλύψει μια μεγάλη αλλαγή&lt;br&gt;και ξαφνικά εμφανίζεται η ανάγκη να γίνει μια γρήγορη διόρθωση κάπου αλλού για να βγεί κάποια bug-fix έκδοση?&lt;br&gt;Τι εξασφαλίζει ότι το branch με τη μεγάλη αλλαγή θα παίξει μετά την bugfix διόρθωση?&lt;br&gt;&lt;br&gt;Svn?&amp;nbsp; Git? Source Safe? Team foundation? πολλά ακούνται...&lt;br&gt;Tι έχετε να προτείνεται για source management για μια μικρή ομάδα τεσσάρων προγραμματιστών, οι οποίοι δεν βρίσκονται σε τοπικό δίκτυο? Θα παίζουν via internet.&lt;br&gt;Η ομάδα θα δουλέψει με το VS 2008.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;</description></item><item><title>Απ: Re: Απ: Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46959.aspx</link><pubDate>Thu, 18 Dec 2008 05:33:02 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46959</guid><dc:creator>Dimitris Papadimitriou</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46959.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=46959</wfw:commentRss><description>Δεν μπορώ να επιβεβαιώσω κι εγώ ότι το merging είναι τραγωδία, αλλά σίγουρα δεν είναι αυτό που θα περίμενα. Φυσικά είναι τραγωδία αν κάνεις ο καθένας το δικό του branch και το κρατήσει για πολύ καιρό, ειδικά σε αρχικά στάδια ενός project όπου υπάρχουν πολλές αλλαγές. Τότε μπορεί η λέξη "τραγωδία" να μην είναι αρκετή, αλλά είναι φυσικό.&lt;br&gt;Σημείωση: Η τελευταία έκδοση του svn και tortoise svn έχει βελτιωμένη υποστήριξη για branch/merge.&lt;br&gt;</description></item><item><title>Re: Απ: Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/46949.aspx</link><pubDate>Thu, 18 Dec 2008 02:38:10 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:46949</guid><dc:creator>Oldgeorge</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/46949.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=46949</wfw:commentRss><description>&lt;BLOCKQUOTE&gt;&lt;div&gt;&lt;img src="http://www.dotnetzone.gr/cs/Themes/default/images/icon-quote.gif"&gt; &lt;strong&gt;Dimitris Papadimitriou:&lt;/strong&gt;&lt;/div&gt;&lt;div&gt;
&lt;P&gt;Δεν ήξερα ότι λέγεται έτσι. Ουσιαστικά αυτό είναι που κάνω και τώρα με τα patches. Τώρα όμως που το είπες το έψαξα λίγο και είδα και μια άλλη ιδέα χρησιμοποιώντας private branches: http://mikemason.ca/2005/03/30/&lt;/P&gt;
&lt;P&gt;Έχει δουλέψει κανείς κάτι τέτοιο;&lt;/P&gt;
&lt;P&gt;&lt;/div&gt;&lt;/BLOCKQUOTE&gt;&lt;/P&gt;
&lt;P&gt;Δουλεύαμε private branches πριν 4 χρόνια με subversion/tortoise σε ένα project με developers που δεν ήταν στον ίδιο χώρο και συχνά δεν βλέπαν (ή δεν έστελναν σχετικά) mail.&amp;nbsp; To integration κατέληξε τραγωδία. &lt;/P&gt;
&lt;P&gt;Πάντως έχεις δίκιο, υπάρχει θέμα στο συγκεκριμένο πρόβλημα. Ίσως όχι σε όλες τις ομάδες ανάπτυξης, αλλά τουλάχιστον στην τωρινή που είμαι όπου οι προτεραιότητες του καθενός αλλάζουν μερικές φορές ακόμα και μέσα στην μέρα και δεν έχουμε την άνεση να ζούμε σε ένα release-driven περιβάλλον (αλλά πρέπει κάθε μέρα να έχουμε stable nightlies) γίνεται της κακομοίρας μερικές φορές. &lt;/P&gt;
&lt;P&gt;Τα patches είναι πολύ καλή φάση πάντως. &lt;/P&gt;</description></item><item><title>Απ: Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/45270.aspx</link><pubDate>Wed, 08 Oct 2008 23:32:02 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:45270</guid><dc:creator>Dimitris Papadimitriou</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/45270.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=45270</wfw:commentRss><description>&lt;p&gt;Στην τελευταία έκδοση του SNV (1.5) η διαδικασία branching/merging έχει βελτιωθεί αρκετά. Επίσης το TortoiseSVN έχει πλέον έναν όμορφο wizard που απλοποιεί τη διαδικασία.&lt;/p&gt;&lt;p&gt;Σημείωση: Το shelve στο subversion λέγεται "Feature Branch". Πρόκειται βέβαια για μια απλή τυπική ονομασία καθώς από κάτω οι έννοιες branch, tag, feature branch και trunk είναι εντελώς εικονικές. Πρόκεται για ακριβώς το ίδιο πράγμα.&lt;br&gt;&lt;/p&gt;</description></item><item><title>Απ: Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/44334.aspx</link><pubDate>Thu, 28 Aug 2008 18:42:08 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:44334</guid><dc:creator>Dimitris Papadimitriou</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/44334.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=44334</wfw:commentRss><description>&lt;p&gt;Λοιπόν δοκίμασα το κόλπο που λέει το παραπάνω link για να κάνεις shelving στο subversion. Δεν είναι άσχημο. Ουσιαστικά ένα branch κάνεις. Βέβαια αυτό που δεν μου αρέσει είναι το εξής (έχει να κάνει με τον τρόπο που χρησιμοποιούμε το subversion στη δουλειά): Έχουμε ενεργοποιήσει την αποστολή e-mail για κάθε commit. Οπότε ακόμα κι όταν κάνει κανείς commit σε ένα shelve παίρνουν ειδοποιήσεις όλοι. Θα ήθελα να μην παίρνουν ειδοποιήσεις συγκεκριμένα άτομα (π.χ. μόνο οι developers ή ακόμα και κανένας). Μάλλον πρέπει να δω αν γίνεται αυτό.&lt;/p&gt;&lt;p&gt;edited: Για να το πω διαφορετικά, πληρώνεις το κόστος του γεγονότος ότι δεν πρόκειται για πραγματικό προσωπικό shelve set αλλά για ένα workaround! &lt;br&gt;&lt;/p&gt;</description></item><item><title>Απ: Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/44308.aspx</link><pubDate>Wed, 27 Aug 2008 02:05:49 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:44308</guid><dc:creator>Dimitris Papadimitriou</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/44308.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=44308</wfw:commentRss><description>&lt;p&gt;Δεν ήξερα ότι λέγεται έτσι. Ουσιαστικά αυτό είναι που κάνω και τώρα με τα patches. Τώρα όμως που το είπες το έψαξα λίγο και είδα και μια άλλη ιδέα χρησιμοποιώντας private branches: http://mikemason.ca/2005/03/30/&lt;/p&gt;&lt;p&gt;Έχει δουλέψει κανείς κάτι τέτοιο;&lt;br&gt;&lt;/p&gt;&lt;p&gt;edited: Το video δεν κατάφερα να το παίξω! Μου λείπουν codecs!&lt;br&gt;&lt;/p&gt;</description></item><item><title>Απ: Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/44305.aspx</link><pubDate>Wed, 27 Aug 2008 00:28:10 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:44305</guid><dc:creator>George J. Capnias</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/44305.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=44305</wfw:commentRss><description>&lt;P&gt;Do you know &lt;A class="" href="http://www.dotnetzone.gr/cs/files/folders/teamsystem/entry26644.aspx"&gt;shelving&lt;/A&gt;??? &lt;img src="http://www.dotnetzone.gr/cs/emoticons/emotion-2.gif" alt="Big Smile" /&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;George J.&lt;BR&gt;&lt;/P&gt;</description></item><item><title>Source control - διαχείριση προσωρινών αλλαγών</title><link>https://www.dotnetzone.gr:443/cs/forums/thread/44301.aspx</link><pubDate>Tue, 26 Aug 2008 23:26:09 GMT</pubDate><guid isPermaLink="false">2622095e-976c-431a-859e-16783ec7ecd7:44301</guid><dc:creator>Dimitris Papadimitriou</dc:creator><slash:comments>0</slash:comments><comments>https://www.dotnetzone.gr:443/cs/forums/thread/44301.aspx</comments><wfw:commentRss>https://www.dotnetzone.gr:443/cs/forums/commentrss.aspx?SectionID=79&amp;PostID=44301</wfw:commentRss><description>&lt;p&gt;Γράφω στο Team Edition forum αν και δεν θέλω να μιλήσω μόνο για το Team System αλλά γενικότερα.&lt;/p&gt;&lt;p&gt;Όταν δουλεύει κανείς ομαδικά μέσω source control (προσωπικά χρησιμοποιώ subversion) υπάρχει το εξής θέμα. Κάποια στιγμή θέλεις να δοκιμάσεις ή να διορθώσεις κάτι στον κώδικα. Ας το ονομάσουμε αυτό task A. Στο μεταξύ προκύπτει κάτι πιο επείγον ή για κάποιο λόγο θέλεις να παγώσεις την δουλειά που έκανες και να πιάσεις κάτι άλλο (task B). Ok, καλό είναι να τελειώνεις κάτι που ξεκινάς, αλλά... συμβαίνει καμιά φορά. Τι κάνεις; Αν απλά αφήσεις un-commited τις αλλαγές του task A και προκύψουν αλλαγές στα ίδια αρχεία για το task B, τότε μπερδεύται η δουλειά. Συνήθως κοινές αλλαγές προκύπτουν στα csproj/vbproj αρχεία. Όταν θα θέλεις να κάνεις commit στο Β θα πρέπει να κάνεις και στο Α το οποίο δεν έχει τελειώσει.&lt;br&gt;&lt;/p&gt;&lt;p&gt;Μια λύση στο subversion είναι να κάνεις ένα patch. Είναι ένα αρχείο που περιλαμβάνει όλες τις αλλαγές στο task A. Μετά κάνεις revert, οπότε χάνεις τις αλλαγές του Α και αρχίζεις να δουλεύεις στο Β. Όταν τελειώνεις κάνεις 'Apply Path' και επαναφέρεις τις αλλαγές του Α.&lt;/p&gt;&lt;p&gt;Να προσθέσω και άλλη μια παράμετρο. Όλα τα παραπάνω γίνονται για να μην μπερδεύεται ο ένας developer με τον άλλο. Όταν μπαίνουν στη μέση και άτομα που ασχολούνται με το building-testing τότε ένα commit είναι πιο σοβαρό. Ακόμα και αν οι developers συμφωνήσουν μεταξύ τους ότι δεν πειράζει να κάνουν commit και κάτι που δεν έχει τελειώσει, ο tester (ο οποίος δεν θεωρείται μέλος της ομάδας) ίσως μπερδευτεί.&lt;br&gt;&lt;/p&gt;&lt;p&gt;Μήπως δεν υπάρχει πρόβλημα με όλα αυτά και είναι απλά ιδέα μου;&lt;br&gt;&lt;/p&gt;&lt;p&gt;Το ερώτημα αποτελεί αφορμή για συζήτηση και ιδέες. Άλλωστε δεν ψάχνω κάποια συγκεκριμένη και άμεση λύση. Απλά θέλω να ακούσω και άλλες απόψεις.&lt;br&gt;&lt;/p&gt;</description></item></channel></rss>