
Είμαι ένα σύνολο αρχάριος να SVN και δεν μπόρεσαν να βρουν μια απάντηση για την ακόλουθη κατάσταση.


Έχω ένα ASP NET 2,0 web app που έχω την ανάπτυξη. Είμαι με τη χρήση τοπικών IIS μου ως διακομιστής ανάπτυξης ιστοσελίδων (δηλαδή όχι το Studio web server ανάπτυξης Visual). ανάπτυξη μου περιβάλλον είναι VS2005, Vista, IIS7, TortoiseSVN / AnkhSVN. VisualSVN είναι εγκατεστημένο στο διακομιστή.


Οι .sln αρχεία μου και βιβλιοθήκες τάξη, κλπ βρίσκεται στο ** C: \ Localsource \ Έργα \ ProjectName ** φάκελο, και .aspx αρχεία μου είναι μου ** C: \ inetpub \ wwwroot \ ProjectName ** φάκελο. 


Μπορώ να ρυθμίσετε το repository για το ** C: \ Localsource \ Έργα \ ProjectName ** πρόστιμο, αλλά δεν μπορώ να σκεφτώ έναν τρόπο για να το ρυθμίσετε για το φάκελο IIS, καθώς και στην ίδια αποθήκη. 


Ποιος είναι ο καλύτερος τρόπος για την αντιμετώπιση αυτής της εξέλιξης περιβάλλον στο SVN;


Πολλά ευχαριστώ,


Μυρμήγκι 

 
Ανατροπής και τη χρήση των υπηρεσιών IIS για την ανάπτυξη ASP.NET
=================================================================



Σε μια λύση στο Visual Studio μπορείτε να έχετε ένα έργο βιβλιοθήκη κατηγορίας που βρίσκεται συνήθως σε έναν κατάλογο κάτω από το αρχείο .sln.


Σε αυτή την περίπτωση έχει επίσης ένα έργο web μέσα στο διάλυμα, αλλά ΔΕΝ κάτω από το αρχείο .sln στη δομή του καταλόγου αρχείων. 


Θα πρέπει να συνδέονται με αυτό το έργο μέσω HTTP και όχι μέσω των τοπικών διαδρομή αρχείου.


IIS θα διαχειριστεί αυτό το [http: // localhost / webapp](http://localhost/webapp) και εξ ορισμού θα το τοποθετήσετε στο c: \ inetpub \ wwwroot \ webapp. Τα αρχεία στο φάκελο webapp δεν θα είναι σε repo που arent στην ιεραρχία της λύσης και τη βιβλιοθήκη κατηγορίας. Αυτό είναι το ερώτημα του πώς να το λύσουμε.


Η απάντησή μου είναι να προχωρήσουμε [http: // localhost / webapp](http://localhost/webapp) να επισημάνω σε ένα φάκελο που είναι κάτω από το αρχείο .sln και δίπλα στον κατάλογο της βιβλιοθήκης τάξης, τότε μπορούμε όλοι να πάνε στο repo.


Χωρίζει τη βιβλιοθήκη τάξη και την την εφαρμογή ιστού είναι καλύτερη πρακτική για να βοηθός κωδικό επαναχρησιμοποίηση και την αποσύνδεση της λογικής από την ιστοσελίδα.

 

Μπορεί να έχετε όχι μόνο το σημείο IIS σε *C: \ Localsource \ Έργα \ ProjectName* και να ρυθμίσετε τα δικαιώματα;

 

Ληστεύω,


Γιατί θεωρείτε ένα .aspx αρχείο έξοδο του κώδικα βάσης; 


Είναι μέρος του κώδικα βάσης. Δεν είναι μια έξοδος από την κατάρτισή τους, για παράδειγμα.


Απλά αναρωτήθηκα?

 

Νομίζω ότι ίσως να θέλετε να διαχωρίσετε σε δύο προβλήματα, μετά [τη σύσταση αυτή](https://stackoverflow.com/questions/352968/subversion-and-using-iis-for-aspnet-development#353298) από Dillorscroft.


Πρώτον, όσον αφορά το υλικό στον server σας ανάπτυξη που δημοσιεύεται στην ιστοσελίδα της παραγωγής, νομίζω ότι θα πρέπει να έχετε έλεγχο έκδοσης για αυτό. Κατ 'αρχάς, ώστε να μπορείτε να επαναφέρετε οποιαδήποτε σελίδα, και μπορείτε επίσης να αποφασίσετε πότε έχετε ένα σταθερό επίπεδο του χώρου ανάπτυξης που θέλετε να εξαγάγετε την παραγωγή. (Θα πάρει ότι από το σύστημα ελέγχου προέλευσης σε μια περιοχή της εικόνας και στη συνέχεια να συγχρονίσετε αυτήν την εικόνα με τον τόπο παραγωγής.)


Έτσι, για το πρώτο μέρος, μιλάμε για εκδόσεων των σελίδων και όλα τα server-side υλικό έθιμο που υποστηρίζει την ιστοσελίδα.


Δεύτερον, όσον αφορά την ανάπτυξη των συστατικών που χρησιμοποιούνται στην περιοχή, που χρειάζονται τα δικά τους σχέδια ανάπτυξης, δεδομένου ότι είναι το αποτέλεσμα που πηγαίνει στο χώρο της ανάπτυξης, όχι όλα από την πηγή, βιβλιοθήκες, κλπ που η συσκευή είναι ενσωματωμένη με. Έτσι, αυτοί θα έχουν το δικό τους δέντρο ανάπτυξης του έργου (σκεφτείτε το σαν να ήσασταν οικοδόμηση μιας βιβλιοθήκης που πρόκειται να χρησιμοποιηθεί από άλλα αναπτυξιακά έργα, αν και σε αυτή την περίπτωση τα υπόλοιπα έργα είναι ιστοσελίδες). Έτσι, το μόνο πράγμα που θα πρέπει να εμφανίζονται στις υπηρεσίες IIS είναι το «αναπτυχθεί» στοιχείο στην ιστοσελίδα της ανάπτυξης. 


φαίνεται να είναι τρία κρίσιμα ερωτήματα για σας εκεί:


1. Πώς ανάπτυξη των δοκιμών που πρέπει να πάει ενάντια στην ιστοσελίδα χειρίζεται και όπου αυτό είναι η έκδοση που ελέγχεται (με την προϋπόθεση ότι δεν ανήκουν στην ίδια ιστοσελίδα)
2. Πόσο εύκολα μπορείτε να κανονίσετε να βεβαιωθείτε ότι όλο το περιεχόμενο του δικτυακού τόπου ανάπτυξης διατηρείται υπό έλεγχο έκδοσης και check-in και -out κατάλληλα. (Αυτό έχει να κάνει με τα εργαλεία που χρησιμοποιείτε για να επεξεργαστείτε τις ιστοσελίδες και άλλες server-side gunk άλλο από τα συστατικά που αναπτύχθηκε από την πλευρά.)
3. Εύκολα λαμβάνοντας αναπτύχθηκε συστατικά από τα έργα που τα παράγουν στο χώρο της ανάπτυξης και να τους να check-in εκεί.


Η λύση μου για την (2) και ελέγχου έκδοσης της ανάπτυξης της ιστοσελίδας είναι να χρησιμοποιήσετε το Visual Source Safe ολοκλήρωση με τις υπηρεσίες IIS και τις επεκτάσεις του FrontPage που τοποθετεί την περιοχή κάτω από τον έλεγχο έκδοσης. Τα συστατικά που παράγονται από άλλα αναπτυξιακά έργα χαρτογραφηθεί στο έργο του διακομιστή από την κοινή χρήση VSS.


Για SVN, θα εικάζουν ότι (1) που θέλετε να δείτε αν υπάρχει ένα προσαρμογέα SVN που IIS θα αναγνωρίζουν ως ένα σύστημα εξωτερικής πηγής ελέγχου και, σε κάθε περίπτωση, (2) να έχουν πειθαρχία που παραλαμβάνει συνιστώσες από συμβάσεις έργων τους στο σύνολο του έργου της ιστοσελίδας.

 

Ο φάκελος IIS δεν είναι η έξοδος του κώδικα βάσης είναι μέρος της αίτησης. Δεν είναι εξόδου CGI ή οτιδήποτε άλλο, αλλά στην πραγματικότητα τα σενάρια για να εκτελέσετε το app!


Αυτό είναι οι σελίδες .aspx που θα έχουν οι έλεγχοι των χρηστών και HTML για να τρέξει πραγματικά η εφαρμογή. μέρος της της καταθέσεως, αλλά χωρίσει μακριά από το διάλυμα VS Studio.


Ο ευκολότερος τρόπος είναι να έχουμε μια λύση και στη συνέχεια το C: \ Localsource \ Έργα \ ProjectName \ ΙΣΤΟΣΕΛΙΔΑ.


Σημείο IIS σε αυτόν το φάκελο, καθώς και.

 

Εντάξει, μπορεί να είναι ηλίθιοι, αλλά εδώ .. Γιατί θα πρέπει να προσθέσετε το φάκελο IIS (δηλαδή η έξοδος του κώδικα βάσης) στο αποθετήριο σας;


### Εκσυγχρονίζω


Νομίζω ότι θα πρέπει να διευκρινιστεί αυτό λίγο περισσότερο .. Αυτό που θέλω να πω είναι ότι δεν είμαι σίγουρος γιατί η ASPX είναι ξεχωριστή από το έργο ούτως ή άλλως; Ποιο είναι το πρόβλημα με το Project Web και *ν* Έργα Class Library σε μια λύση, προστίθεται στην αποθήκη σας .. Στη συνέχεια, δημοσιεύει σε κάθε νέα έκδοση ..


Αν είναι απλά μια περίπτωση « *θα μπορούσε να είναι πιο εύκολο να επαναφέρετε τη δημοσιευμένη εξόδου* » τότε ας είναι, ήμουν απλά περίεργος, όπως δεν έχω δει πολλούς ανθρώπους λειτουργεί πραγματικά με αυτόν τον τρόπο.


Ανάπτυξη λύσεων σε αυτή τη δομή θα ήταν πολύ πιο εύκολο, καθώς ..

 

Χμμμ - Καλό σημείο. Ιδρύθηκε σαν αυτό όταν ήρθα εδώ, και Visual Studio δημιουργεί πάντα ιστοσελίδες στο φάκελο wwwroot, οπότε υπέθεσα wwwroot ήταν ακριβώς πού έπρεπε να πάει.


Ίσως θα πρέπει να σκεφτόμαστε πώς θα κάνουμε μια μικρή αναδιάταξη ...


Ευχαριστώ!

 