Πώς μπορώ να εφαρμόσει ένα προ-διαπράττουν σενάριο γάντζο στο SVN που καλεί dos2unix για την επικύρωση check-in αρχείο

ψήφοι
7

Αναρωτιόμουν αν κάποιος εδώ είχε κάποια εμπειρία να γράψω αυτό το είδος του σεναρίου και αν μπορούσατε να μου δώσετε κάποιες πληροφορίες.

Θα ήθελα να τροποποιήσετε αυτό το σενάριο για να επικυρώσετε ότι το αρχείο check-in δεν έχει Carriage Return στη μορφοποίηση EOL. Η μορφή EOL είναι CR LF στα Windows και LF στο Unix. Όταν ένας χρήστης κώδικα για έλεγχο με τη μορφή των Windows. Δεν συγκεντρώνουν το Unix πια. Ξέρω ότι αυτό μπορεί να γίνει από την πλευρά του πελάτη, αλλά θα πρέπει να έχετε αυτό το επικύρωση γίνεται από την πλευρά του διακομιστή. Για να επιτευχθεί αυτό, θα πρέπει να κάνετε τα εξής:

1) Βεβαιωθείτε ότι το αρχείο που ελέγχει δεν είναι μια δυαδική, δεν ξέρω πώς να το κάνουμε αυτό με svnlook, θα πρέπει να ελέγξετε το μίμος: το είδος του αρχείου; Το Κόκκινο Βιβλίο δεν υποδεικνύει αυτό σαφώς και θα πρέπει να μην έχουν δει.

2) Θα ήθελα να τρέξει το dos2unix εντολή για να επικυρώσετε ότι το αρχείο έχει τη σωστή μορφή EOL. Θα ήθελα να συγκρίνουν την έξοδο της εντολής dos2unix έναντι του αρχικού αρχείου. Εάν υπάρχει διαφορά μεταξύ των δύο, θα δώσει ένα μήνυμα σφάλματος στον πελάτη και να ακυρώσει το check-in.

Θα ήθελα τις παρατηρήσεις / σχόλιά σας σχετικά με αυτήν την προσέγγιση.

Δημοσιεύθηκε 07/09/2008 στις 15:32
πηγή χρήστη
Σε άλλες γλώσσες...                            


2 απαντήσεις

ψήφοι
1

Τι ακριβώς είναι που προσπαθούμε να κάνουμε;

Φυσικά, υπάρχουν πολλά μέρη για να μάθουν για svn προ-δεσμευτούν άγκιστρα (π.χ. εδώ , εδώ , και στο κόκκινο βιβλίο ), αλλά αυτό εξαρτάται από το τι προσπαθείτε να κάνετε και τι είναι διαθέσιμες στο σύστημά σας.

Μπορείτε να γίνετε πιο συγκεκριμένος;

Απαντήθηκε 07/09/2008 στις 15:48
πηγή χρήστη

ψήφοι
4

Νομίζω ότι μπορείτε να αποφύγετε μια δεσμευτούν σενάριο γάντζο σε αυτή την περίπτωση με τη χρήση του svn:eol-styleακινήτου, όπως περιγράφεται στο SVNBook:

Με αυτό τον τρόπο SVN να ανησυχείτε για καταλήξεις γραμμή σας για σας.

Καλή τύχη!

Απαντήθηκε 08/09/2008 στις 18:45
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more