You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: book/07-git-tools/sections/signing.asc
+28-68Lines changed: 28 additions & 68 deletions
Original file line number
Diff line number
Diff line change
@@ -1,17 +1,12 @@
1
1
[[_signing]]
2
-
=== Signing Your Work
2
+
=== Υπογραφή της δουλειάς μας
3
3
4
4
Το Git είναι κρυπτογραφικά ασφαλές, αλλά δεν είναι απολύτως ασφαλές.
5
-
Εάν παίρνουμε εργασία από άλλους στο διαδίκτυο και θέλουμε να επαληθεύσουμε ότι οι υποβολές είναι στην πραγματικότητα από μια αξιόπιστη πηγή, ο Git έχει μερικούς τρόπους να υπογράψει και να επαληθεύσει την εργασία χρησιμοποιώντας το GPG.
5
+
Εάν παίρνουμε την εργασία άλλων στο διαδίκτυο και θέλουμε να επαληθεύσουμε ότι οι υποβολές είναι στην πραγματικότητα από μια αξιόπιστη πηγή, το Git μάς παρέχει μερικούς τρόπους να υπογράφουμε και να επαληθεύουμε τη δουλειά μας χρησιμοποιώντας το GPG.
6
6
7
-
Git is cryptographically secure, but it's not foolproof.
8
-
If you're taking work from others on the internet and want to verify that commits are actually from a trusted source, Git has a few ways to sign and verify work using GPG.
7
+
==== Εισαγωγή στο GPG
9
8
10
-
==== GPG Introduction
11
-
12
-
Πρώτα απ 'όλα, αν θέλουμε να υπογράψουμε οτιδήποτε πρέπει να ρυθμίσουμε το GPG και να εγκαταστήσουμε το προσωπικό μας κλειδί.
13
-
14
-
First of all, if you want to sign anything you need to get GPG configured and your personal key installed.
9
+
Κατ' αρχάς, αν θέλουμε να υπογράψουμε ο,τιδήποτε πρέπει να ρυθμίσουμε το GPG και να εγκαταστήσουμε το προσωπικό μας κλειδί.
Εάν δεν έχουμε εγκαταστήσει ένα κλειδί, μπορούμε να δημιουργήσουμε ένα με την `gpg --gen-key`.
21
+
Εάν δεν έχουμε εγκαταστήσει ένα κλειδί, μπορούμε να δημιουργήσουμε ένα με την εντολή `gpg --gen-key`.
27
22
28
23
[source,console]
29
24
----
30
25
gpg --gen-key
31
26
----
32
27
33
-
Μόλις έχουμε ένα ιδιωτικό κλειδί για να συνδεθούμε, μπορούμε να διαμορφώσουμε το Git για να το χρησιμοποιήσουμε για να υπογράψουμε τα πράγματα ρυθμίζοντας τη ρύθμιση config_server.signingkey.
34
-
35
-
Once you have a private key to sign with, you can configure Git to use it for signing things by setting the `user.signingkey` config setting.
28
+
Μόλις έχουμε ένα ιδιωτικό κλειδί για να υπογράφουμε, μπορούμε να διαμορφώσουμε το Git να το χρησιμοποιεί για να υπογράφουμε θέτοντας τη ρύθμιση `config_server.signingkey`.
36
29
37
30
[source,console]
38
31
----
39
32
git config --global user.signingkey 0A46826A
40
33
----
41
34
42
-
Τώρα, το Git θα χρησιμοποιήσει το κλειδί μας από προεπιλογή για να υπογράψει ετικέτες και υποβολές εάν θέλουμε.
43
-
44
-
Now Git will use your key by default to sign tags and commits if you want.
35
+
Τώρα, το Git θα χρησιμοποιεί το κλειδί μας εκ προεπιλογής για να υπογράφει ετικέτες και υποβολές, εφόσον το θέλουμε.
45
36
46
-
==== Signing Tags
37
+
==== Υπογραφή ετικετών
47
38
48
-
Αν έχουμε ιδιωτικό κλειδί GPG, μπορούμε να το χρησιμοποιήσουμε για να υπογράψουμε νέες ετικέτες.
49
-
Το μόνο που έχουμε να κάνουμε είναι να χρησιμοποιήσουμε το `-s` αντί για το '-a`:
50
-
51
-
If you have a GPG private key setup, you can now use it to sign new tags.
52
-
All you have to do is use `-s` instead of `-a`:
39
+
Αν έχουμε ιδιωτικό κλειδί GPG, μπορούμε να το χρησιμοποιούμε για να υπογράφουμε νέες ετικέτες.
40
+
Το μόνο που έχουμε να κάνουμε είναι να χρησιμοποιήσουμε την επιλογή `-s` αντί για της `-a`:
Για να επαληθεύσουμε μια υπογεγραμμένη ετικέτα, χρησιμοποιούμε την ετικέτα git -v [tag-name].
97
-
Αυτή η εντολή χρησιμοποιεί GPG για να επαληθεύσει την υπογραφή.
98
-
Χρειάζεται το δημόσιο κλειδί του υπογράφοντα στο κλειδί μας για να λειτουργήσει σωστά:
99
-
100
-
To verify a signed tag, you use `git tag -v [tag-name]`.
101
-
This command uses GPG to verify the signature.
102
-
You need the signer’s public key in your keyring for this to work properly:
82
+
Για να επαληθεύσουμε μια υπογεγραμμένη ετικέτα, χρησιμοποιούμε την εντολή `git -v [tag-name]`.
83
+
Αυτή η εντολή χρησιμοποιεί το GPG για να επαληθεύσει την υπογραφή.
84
+
Χρειαζόμαστε το δημόσιο κλειδί του υπογράφοντα στην κλειδοθήκη μας για να λειτουργήσει σωστά η επαλήθευση:
103
85
104
86
[source,console]
105
87
----
@@ -130,11 +112,8 @@ error: could not verify the tag 'v1.4.2.1'
130
112
[[_signing_commits]]
131
113
==== Υπογραφή υποβολών
132
114
133
-
Σε πιο πρόσφατες εκδόσεις του Git (v1.7.9 και παραπάνω), μπορούμε τώρα να υπογράψουμε και μεμονωμένες υποβολές.
134
-
Αν ενδιαφερόμαστε να υπογράψουμε υποβολές απευθείας αντί μόνο για τις ετικέτες, το μόνο που χρειάζεται να κάνουμε είναι να προσθέσουμε ένα `-S` στην εντολή μας `git commit'.
135
-
136
-
In more recent versions of Git (v1.7.9 and above), you can now also sign individual commits.
137
-
If you're interested in signing commits directly instead of just the tags, all you need to do is add a `-S` to your `git commit` command.
115
+
Σε πιο πρόσφατες εκδόσεις του Git (v1.7.9 και παραπάνω), μπορούμε πλέον να υπογράφουμε και μεμονωμένες υποβολές.
116
+
Αν ενδιαφερόμαστε να υπογράψουμε υποβολές απευθείας αντί μόνο τις ετικέτες, το μόνο που χρειάζεται να κάνουμε είναι να προσθέσουμε ένα `-S` στην εντολή μας `git commit'.
Επιπλέον, μπορούμε να διαμορφώσουμε το `git log 'για να ελέγξουμε τυχόν υπογραφές που βρίσκει και να τις παραθέσουμε στην έξοδο του με τη μορφή`% G? `.
170
-
171
-
Additionally, you can configure `git log` to check any signatures it finds and list them in its output with the `%G?` format.
146
+
Επιπλέον, μπορούμε να διαμορφώσουμε την `git log` να ελέγχει τυχόν υπογραφές που βρίσκει και να τις παραθέτει στην έξοδο της με τη μορφή `%G?`.
172
147
173
148
[source,console]
174
149
----
@@ -180,27 +155,19 @@ ca82a6d N Scott Chacon changed the version number
180
155
a11bef0 N Scott Chacon first commit
181
156
----
182
157
183
-
Εδώ μπορούμε να δούμε ότι μόνο η πιο πρόσφατη δέσμευση είναι υπογεγραμμένη και έγκυρη και οι προηγούμενες υποβολές δεν είναι.
184
-
185
-
Here we can see that only the latest commit is signed and valid and the previous commits are not.
186
-
187
-
In Git 1.8.3 and later, "git merge" and "git pull" can be told to inspect and reject when merging a commit that does not carry a trusted GPG signature with the `--verify-signatures` command.
158
+
Εδώ μπορούμε να δούμε ότι μόνο η πιο πρόσφατη υποβολή είναι υπογεγραμμένη και έγκυρη, ενώ οι προηγούμενες υποβολές δεν είναι.
188
159
189
-
Στο Git 1.8.3 και μεταγενέστερα, μπορεί να ειπωθεί ότι "git merge" και "git pull" μπορούν να επιθεωρηθούν και να απορριφθούν όταν συγχωνεύσουν μια δέσμευση που δεν φέρει αξιόπιστη υπογραφή GPG με την εντολή `-verify-signatures`.
160
+
Από το Git 1.8.3 και μετά, είναι δυνατό το πούμε στις `git merge` και `git pull` να επιθεωρούν και να απορρίπτουν όταν συγχωνεύσουν μια υποβολή που δεν φέρει αξιόπιστη υπογραφή GPG με την εντολή `--verify-signatures`.
190
161
191
-
Εάν χρησιμοποιούμε αυτήν την επιλογή όταν συγχωνεύουμε έναν κλάδο και περιέχει υποβολές που δεν είναι υπογεγραμμένες και έγκυρες, η συγχώνευση δεν θα λειτουργήσει.
192
-
193
-
If you use this option when merging a branch and it contains commits that are not signed and valid, the merge will not work.
162
+
Εάν χρησιμοποιούμε αυτήν την επιλογή όταν συγχωνεύουμε έναν κλάδο και περιέχει υποβολές που δεν είναι υπογεγραμμένες και έγκυρες, η συγχώνευση δεν γίνεται.
194
163
195
164
[source,console]
196
165
----
197
166
$ git merge --verify-signatures non-verify
198
167
fatal: Commit ab06180 does not have a GPG signature.
199
168
----
200
169
201
-
Εάν η συγχώνευση περιέχει μόνο έγκυρες υπογεγραμμένες υποβολές, η εντολή συγχώνευσης θα μας δείξει όλες τις υπογραφές που έχει ελέγξει και στη συνέχεια θα προχωρήσει με τη συγχώνευση.
202
-
203
-
If the merge contains only valid signed commits, the merge command will show you all the signatures it has checked and then move forward with the merge.
170
+
Εάν η συγχώνευση περιέχει μόνο έγκυρες, υπογεγραμμένες υποβολές, η εντολή συγχώνευσης θα μας δείξει όλες τις υπογραφές που έχει ελέγξει και στη συνέχεια θα προχωρήσει με τη συγχώνευση.
204
171
205
172
[source,console]
206
173
----
@@ -212,11 +179,8 @@ Fast-forward
212
179
1 file changed, 2 insertions(+)
213
180
----
214
181
215
-
Μπορούμε επίσης να χρησιμοποιήσουμε την επιλογή `-S` με την ίδια την εντολή` git merge 'για να υπογράψουμε την προκύπτουσα δέσμευση συγχώνευσης.
216
-
Το παρακάτω παράδειγμα επαληθεύει ότι κάθε δέσμευση στο κλάδο που πρόκειται να συγχωνευθεί υπογράφεται και επιπλέον υπογράφει την προκύπτουσα δέσμευση συγχώνευσης.
217
-
218
-
You can also use the `-S` option with the `git merge` command itself to sign the resulting merge commit itself.
219
-
The following example both verifies that every commit in the branch to be merged is signed and furthermore signs the resulting merge commit.
182
+
Μπορούμε επίσης να χρησιμοποιήσουμε την επιλογή `-S` με την ίδια την εντολή `git merge` για να υπογράψουμε την υποβολή που προκύπτει από τη συγχώνευση.
183
+
Το παρακάτω παράδειγμα αφενός επαληθεύει ότι κάθε υποβολή στο κλάδο που πρόκειται να συγχωνευθεί υπογεγραμμένη, αφετέρου υπογράφει την προκύπτουσα υποβολή συγχώνευσης.
220
184
221
185
[source,console]
222
186
----
@@ -234,10 +198,6 @@ Merge made by the 'recursive' strategy.
234
198
235
199
==== Όλοι πρέπει να υπογράψουν
236
200
237
-
Η υπογραφή ετικετών και υποβολών είναι μεγάλη, αλλά αν αποφασίσουμε να το χρησιμοποιήσουμε στη φυσιολογική ροή εργασίας μας, θα πρέπει να βεβαιωθούμε ότι όλοι στην ομάδα μας κατανοούν πώς να το πράξουν.
238
-
Εάν δεν το κάνουμε, θα καταλήξουμε να αφιερώσουμε πολύ χρόνο βοηθώντας τους ανθρώπους να καταλάβουν πώς να ξαναγράψουν τις υποβολές τους με υπογεγραμμένες εκδόσεις.
239
-
Βεβαιωθούμε ότι καταλαβαίνουμε το GPG και τα οφέλη από την υπογραφή των πραγμάτων πριν την υιοθετήσουμε ως μέρος της τυποποιημένης ροής εργασιών μας.
240
-
241
-
Signing tags and commits is great, but if you decide to use this in your normal workflow, you'll have to make sure that everyone on your team understands how to do so.
242
-
If you don't, you'll end up spending a lot of time helping people figure out how to rewrite their commits with signed versions.
243
-
Make sure you understand GPG and the benefits of signing things before adopting this as part of your standard workflow.
201
+
Η υπογραφή ετικετών και υποβολών είναι σπουδαία, αλλά αν αποφασίσουμε να τη χρησιμοποιούμε στη φυσιολογική ροή εργασίας μας, θα πρέπει να βεβαιωθούμε ότι όλοι στην ομάδα μας κατανοούν πώς να το κάνουν.
202
+
Εάν δεν το κάνουμε, θα καταλήξουμε να αφιερώνουμε πολύ χρόνο βοηθώντας τους άλλους να καταλάβουν πώς να ξαναγράψουν τις υποβολές τους με υπογεγραμμένες εκδόσεις.
203
+
Τέλος, πρέπει να βεβαιωθούμε ότι καταλαβαίνουμε το GPG και τα οφέλη από της υπογραφής πριν την υιοθετήσουμε ως μέρος της τυποποιημένης ροής εργασίας μας.
0 commit comments